Zadig v1.18.0 文档
  • 快速入门

    • 什么是 Zadig
    • 核心概念
    • 快速安装
    • 第一个项目
    • 接入准备
  • 安装与配置

    • 安装简介
    • All in One 模式
    • 使用 Sealos 一键安装
    • 基于 Helm 命令安装
    • 基于现有 Kubernetes 安装
    • 本地安装
    • 兼容性列表
  • 最佳实践
  • 项目

    • 项目

      • 项目介绍
      • K8s YAML 项目
      • K8s Helm Chart 项目
      • K8s 托管项目
      • 主机项目
      • 权限管理
    • 工作流

      • 简介
      • 产品工作流
      • 自定义工作流
      • 工作流任务
      • 工作流审批
      • 工作流通知
      • 工作流触发器
    • 环境

      • K8s YAML 环境
      • K8s Helm Chart 环境
      • K8s 托管环境
      • 主机环境
      • 服务详情
    • 服务

      • 简介
      • K8s YAML 测试服务
      • K8s Helm Chart 服务
      • K8s 托管服务
      • 服务组件
      • 服务变量
      • 主机服务
    • 构建
    • 测试
    • 代码扫描
  • 模板库

    • K8s YAML 模板
    • Helm Chart 模板
    • Dockerfile 模板
    • 构建模板
  • 工作流

    • 工作流的触发
    • 工作流的构建缓存
    • 工作流任务的并发运行
    • 工作流的镜像版本回退
    • 工作流的变量传递
  • 环境

    • 环境的负载均衡
    • 配置多套环境
    • 自测联调环境
  • 测试中心

    • 测试中心
    • 测试工具实践
    • Apipost 测试平台接入
    • Apifox 测试平台接入
  • 交付中心

    • 交付物追踪
  • 数据视图

    • 数据概览
    • 效能洞察
  • 仪表盘

    • 仪表盘
  • 集成管理

    • 账号系统

      • LDAP
      • OAuth 2.0
      • GitHub
    • 项目管理
    • 代码源

      • 简介
      • GitLab 集成
      • GitHub 集成
      • Gerrit 集成
      • Gitee 公有云集成
      • 其他代码源集成
    • CI/CD 工具
    • 代码扫描
    • 镜像仓库
    • 对象存储
    • Helm 仓库
    • Kubernetes 集群
    • 主机管理
    • 其他系统
    • 软件包管理
    • 自定义镜像管理
  • 系统设置

    • 系统配置
    • 用户管理
    • 公告管理
    • 操作日志
    • 通知设置
  • 账号设置

    • 偏好设置
  • 开发者中心

    • OpenAPI 开发文档

      • API 调用方式
      • 交付中心
      • 工作流
      • 效能洞察
    • 外部系统接入开发文档

      • 自定义账号系统
      • 自定义工作流任务
    • VS Code Toolkit 插件

      • 使用指南
  • 常见问题

    • 产品使用 FAQ
    • 部署运维 FAQ
    • 集群故障 FAQ
    • 认证鉴权 FAQ
    • 诊断手册
  • 版本发布历史

    • Zadig Roadmap
    • v1.18.0 Release Notes
    • v1.17.0 Release Notes
    • v1.16.0 Release Notes
    • v1.15.0 Release Notes
    • v1.14.0 Release Notes
    • v1.13.0 Release Notes
    • v1.12.0 Release Notes
    • v1.11.0 Release Notes
    • v1.10.0 Release Notes
    • v1.9.0 Release Notes
    • v1.8.0 Release Notes
    • v1.7.1 Release Notes
    • v1.7.0 Release Notes
    • v1.6.0 Release Notes
    • v1.5.0 Release Notes
    • v1.4.0 Release Notes
    • v1.3.1 Release Notes
    • v1.3.0 Release Notes
    • v1.2.0 Release Notes
    • v1.1.0 Release Notes
    • v1.0.0 Release Notes
    • v1.0.0-rc.1 Release Notes
  • 术语表

    • 术语表

Zadig 几乎支持市面上所有测试工具和框架,下面介绍几种主流测试框架在 Zadig 中的应用实践,包括自动化测试用例的管理、自动化测试的执行,测试报告的分析等,并结合 Zadig 的环境能力实现测试左移,赋能其他角色也参与到质量建设中来,有效降低问题发现和修复成本。

测试框架/工具

JMeter

关于 JMeter 的更多信息可点击链接查看。

组织自动化测试代码

根据实际测试业务和功能,编写自动化测试代码并组织在代码仓库中。本实践中将使用 JMeter 对 KodeRover 官网进行一个简单的压测,自动化测试源码可点击链接查看。

配置自动化测试

jMeter 实践jMeter 实践

进入 Zadig 的具体项目,完成自动化测试的配置,说明如下:

  • 配置测试执行环境:选择执行自动化测试时所必须的软件包,本例中依赖的软件包分别为 jMeter 5.4.3 和 java 1.12.0.1。如果系统内置的软件包种类或版本无法满足测试需求,也可以参考软件包配置新增软件包
  • 配置代码信息:配置执行自动化测试所必须的相关代码库,包括但不限于:
    • 自动化测试用例源码所在的代码仓库
    • 执行自动化测试依赖的相关基础组件库
  • 配置测试脚本:配置运行自动化测试的脚本,本例中测试脚本如下:
#!/bin/bash
set -ex
cd zadig/examples/jMeter-demo/
jmeter -n -t demo.jmx -l demo.jtl # run test
if [ -e reports ]; then
    rm -rf reports
fi
jmeter -g demo.jtl -o reports # generate reports
  • 高级配置:配置测试结果导出以便在测试执行完毕后下载测试报告进行分析。填写测试报告目录,本例中为 $WORKSPACE/zadig/examples/jMeter-demo/reports

执行自动化测试

配置完毕后,执行自动化测试。

jMeter 实践

分析测试报告

暂不支持在平台直接浏览测试报告,待自动化测试运行完毕后,点击下载将测试报告下载到本地。

jMeter 实践

解读下载的测试报告,查看本次压力测试的结果,分析性能瓶颈。

jMeter 实践jMeter 实践

Ginkgo

关于 Ginkgo 的更多信息可点击链接查看。

组织自动化测试代码

根据实际测试业务和功能,编写自动化测试代码并组织在代码仓库中。本实践中将对 KodeRover 官网及文档站的可用性进行自动化检测,自动化测试源码可点击链接查看。

配置自动化测试

ginkgo 实践 进入 Zadig 的具体项目,完成自动化测试的配置,说明如下:

  • 配置测试执行环境:选择执行自动化测试时所必须的软件包:
    • go 1.16.13
    • ginkgo 2.0.0
  • 配置代码信息:配置执行自动化测试所必须的相关代码库,包括但不限于:
    • 自动化测试用例源码所在的代码仓库
    • 执行自动化测试依赖的相关基础组件库
  • 配置测试脚本:配置运行自动化测试的脚本,本例中测试脚本如下:
#!/bin/bash
set -ex
export GOPROXY=https://goproxy.cn,direct
go mod tidy
cd zadig/examples/test-demo/test
ginkgo -v --junit-report=out.xml # 运行测试用例并产出 Junit XML 格式的测试报告
  • 测试报告配置:配置 Junit XML 格式的测试报告目录,本例中为 $WORKSPACE/zadig/examples/test-demo/test

执行自动化测试

配置完毕后,执行自动化测试。

ginkgo 实践

分析测试报告

待自动化测试运行完毕后点击查看测试报告,可查看每一条用例的执行详情,快速过滤失败的用例重点分析。

ginkgo 实践ginkgo 实践

Pytest

关于 Pytest 的更多信息可点击链接查看。

组织自动化测试代码

根据实际测试业务和功能,编写自动化测试代码并组织在代码仓库中。本实践中将使用 Pytest 进行数学运算测试,自动化测试源码可点击链接查看。

配置自动化测试

pytest 实践pytest 实践

进入 Zadig 的具体项目,完成自动化测试的配置,说明如下:

  • 配置测试执行环境:选择执行自动化测试时所必须的软件包,本例中对 Python 的版本有要求,可配置 Python 3.7.0,软件包管理可参考:软件包配置
  • 配置代码信息:配置执行自动化测试所必须的相关代码库,包括但不限于:
    • 自动化测试用例源码所在的代码仓库
    • 执行自动化测试依赖的相关基础组件库
  • 配置测试脚本:配置运行自动化测试的脚本,本例中测试脚本如下:
#!/bin/bash
set -ex
pip3 install pytest-html
pip3 install pytest
cd $WORKSPACE/zadig/examples/pytest-demo
pytest --junitxml=./junit.xml --html=./report.html # 执行测试并生成 JUnit xml 测试报告和 Html 测试报告
  • 测试报告配置:按需配置 JUnit xml 格式和 Html 格式的测试报告。
    • Junit 报告:本例中为 $WORKSPACE/zadig/examples/pytest-demo
    • Html 报告:本例中为 $WORKSPACE/zadig/examples/pytest-demo/*.html

执行自动化测试

配置完毕后,执行自动化测试。

pytest 实践

分析测试报告

待自动化测试运行完毕后点击查看测试报告,可查看每一条用例的执行详情,快速过滤失败的用例重点分析。

pytest 实践pytest 实践

进阶使用

有了自动化测试后,在 Zadig 上如何使用才能最大程度的发挥其价值,切切实实地为日常业务迭代中提供质量保障,下面我们展开介绍。

和环境联动

将自动化测试和工作流关联起来,当日常运行工作流更新环境后,会自动执行自动化测试。可以实现只要环境有变更,就第一时间对其做自动化测试。

关联工作流关联工作流

Prev
测试中心
Next
Apipost 测试平台接入