測試開發之自动化篇-禅道自動化測試集成
原創-
2022-08-30 11:10:04
-
4201
禅道是一款国产的开源研发項目管理软件,基于敏捷和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做了實現,具體可參考這裏。
-
禅道産品
禅道開源版 禅道企業版 禅道旗艦版 禅道IPD版 -
核心功能
産品管理 項目管理 質量管理 效能管理 -
使用文檔
基本版手冊 企業版手冊 旗艦版手冊 IPD版手冊 開發中心手冊 -
幫助中心
积分問答 常見問題 論壇交流 使用視頻 Gitee GitHub -
關于我們
關于我們 禅道軟件 最新動態 禅道活動 -
禅道社區
禅道博客 積分排行 積分商城 禅道書院 -
聯系方式
聯系人:楊苗 電話:13165050229 微信:13165050229 Q Q:2692096539北京、上海、深圳分部