禅道是一款国产的开源研发项目管理软件,基于麻利和CMMI治理理念进行设计,残缺地笼罩了项目管理的外围流程。依据国内权威测试网站51Testing的《2021软件测试现状调查报告》显示,禅道已间断七年在"罕用的测试管理工具”中排名第一。
在后面的专题文章中咱们认为,随着继续集成和DevOPS的风行,自动化测试曾经成为了研发流动中的不可或缺的一个重要环节。甚至能够说,没有成熟的自动化测试,继续集成和DevOPS都不堪称之为胜利。
本文给大家介绍如何将第三方的自动化测试工具同禅道进行集成,打造一个一站式的残缺研发治理平台。内容基于禅道16.5版本,更早的版本请参照这里装置RestAPI后持续。
首先,您能够将公司现有的自动化测试脚本和禅道中的用例相关联,据此能够统计禅道测试用例的自动化率。通过调用禅道testcases接口,能够在禅道和自动化零碎间,同步测试步骤和期待后果等信息。在禅道开源的自动化测试框架ZTF中,咱们反对ZTF自治理的测试脚本到禅道用例的映射和同步。
#!/usr/bin/env php<?php/**title=the simple demo for ztfcid=0pid=01. step1 >> expect 12. 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做了实现,具体可参考这里。