乐趣区

关于自动化测试:测试开发之自动化篇禅道自动化测试集成

禅道是一款国产的开源研发项目管理软件,基于麻利和 CMMI 治理理念进行设计,残缺地笼罩了项目管理的外围流程。依据国内权威测试网站 51Testing 的《2021 软件测试现状调查报告》显示,禅道已间断七年在 ” 罕用的测试管理工具”中排名第一。

在后面的专题文章中咱们认为,随着继续集成和 DevOPS 的风行,自动化测试曾经成为了研发流动中的不可或缺的一个重要环节。甚至能够说,没有成熟的自动化测试,继续集成和 DevOPS 都不堪称之为胜利。

本文给大家介绍如何将第三方的自动化测试工具同禅道进行集成,打造一个一站式的残缺研发治理平台。内容基于禅道 16.5 版本,更早的版本请参照这里装置 RestAPI 后持续。

首先,您能够将公司现有的自动化测试脚本和禅道中的用例相关联,据此能够统计禅道测试用例的自动化率。通过调用禅道 testcases 接口,能够在禅道和自动化零碎间,同步测试步骤和期待后果等信息。在禅道开源的自动化测试框架 ZTF 中,咱们反对 ZTF 自治理的测试脚本到禅道用例的映射和同步。

#!/usr/bin/env php
<?php
/**
title=the simple demo for ztf
cid=0
pid=0
1. step1 >> expect 1
2. step2 
3. step3 >> expect 3
*/

print("expect 1\n");
print("expect 3\n");

您能够应用禅道的继续集成个性,在流水线中执行单元或自动化测试。执行实现后,将输入的测试后果,应用 ciresults 接口提交到禅道,由禅道中集中地展现测试报告。在禅道开源的自动化测试框架 ZTF 中,咱们反对把脚本执行后果、单元测试后果和第三方通用报表工具 Allure Report 的报告同步到禅道中去。如果 ZTF 脚本正文中设置了禅道用例的编号 cid,或者在 Allure 通过标注(正文)或代码的形式设置了单元测试用例的编号,具体的测试后果在同步后会挂到指定的禅道用例上。

在测试执行中产生用例失败时,能够应用 bugs 接口向禅道提交缺点。缺点的形容能够从 ZTF 脚本的执行步骤、期待后果、理论后果,或单元测试的输入信息中获取。具体能够参照 ZTF 开源我的项目的 cb 提交缺点指令的实现。

借助您研发管理系统中所维系的需要、用例、脚本、执行、后果和缺点等工作件之间的关系,您能够在项目管理层面,失去需要的用例设计覆盖率、用例的自动化覆盖率、某次迭代中的用例或需要的执行覆盖率等度量指标。

以下列出您可能须要应用到的禅道接口,供大家参考。

登录

POST
api.php/v1/tokens

列出所有产品

GET
api.php/v1/products

列出产品的用例模块

GET
api.php/v1/modules?type=case&id=<product_id>

列出产品测试套件

GET
api.php/v1/products/<product_id>/testsuites

列出产品测试套件

GET
api.php/v1/testtasks?product=<product_id>&limit=1000

依据模块获取用例

api.php/v1/products/%d/testcases?module=%d

依据套件获取用例

api.php/v1/testsuites/%d

依据工作获取用例

api.php/v1/testtasks/%d

获取用例详情

GET
api.php/v1/testcases/%d

更新用例内容

PUT
api.php/v1/testcases/%d

提交测试后果

POST
api.php/v1/ciresults

提交缺点

POST
api.php/v1/products/<product_id>/bugs

上述接口,能够在禅道“文档 -> 接口库”中找到其 API 的具体介绍,在 ZTF 开源测试框架我的项目中,咱们已应用 Golang 做了实现,具体可参考这里。

专题目录

退出移动版