开发者社区 > 云效DevOps > 正文

云效工作流能不能写一个 如果未通过的缺陷被关闭了 测试用例自动改成已通过?

云效工作流能不能写一个 如果未通过的缺陷被关闭了 测试用例自动改成已通过?image.png

展开
收起
真的很搞笑 2024-01-03 22:19:02 32 0
3 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    在云效工作流中,可以通过编写脚本来实现这个需求。具体来说,你可以在测试用例执行后,检查缺陷的状态是否为“已关闭”,如果是,则将该测试用例的状态改为“已通过”。

    以下是一个示例的Python脚本,用于实现这个功能:

    import requests
    
    # 获取缺陷状态
    def get_defect_status(defect_id):
        url = "https://api.codeup.com/v1/defects/{}".format(defect_id)
        headers = {"Authorization": "Bearer YOUR_ACCESS_TOKEN"}
        response = requests.get(url, headers=headers)
        if response.status_code == 200:
            return response.json()["status"]
        else:
            return None
    
    # 更新测试用例状态
    def update_testcase_status(testcase_id, status):
        url = "https://api.codeup.com/v1/testcases/{}".format(testcase_id)
        headers = {"Authorization": "Bearer YOUR_ACCESS_TOKEN"}
        data = {"status": status}
        response = requests.put(url, headers=headers, json=data)
        if response.status_code == 200:
            return True
        else:
            return False
    
    # 主函数
    def main():
        # 获取缺陷ID和测试用例ID
        defect_id = "DEFECT_ID"
        testcase_id = "TESTCASE_ID"
    
        # 获取缺陷状态
        defect_status = get_defect_status(defect_id)
    
        # 如果缺陷状态为“已关闭”,则更新测试用例状态为“已通过”
        if defect_status == "closed":
            update_testcase_status(testcase_id, "passed")
            print("Test case status updated to 'passed'")
        else:
            print("Defect status is not 'closed', test case status remains unchanged")
    
    if __name__ == "__main__":
        main()
    

    请注意,上述代码中的YOUR_ACCESS_TOKEN需要替换为你的实际访问令牌。此外,你需要根据实际情况修改缺陷ID和测试用例ID的值。

    2024-01-04 14:23:07
    赞同 展开评论 打赏
  • 阿里云云效工作流(Alibaba Cloud Workflow)是一个强大的自动化工具,可以帮助您实现各种业务流程的自动化。根据您的需求,您可以通过创建一个自定义的工作流来实现以下功能:

    1. 当一个缺陷被关闭时,触发一个工作流任务。
    2. 在这个工作流任务中,编写一个脚本或者使用云效提供的API来修改测试用例的状态。
    3. 将测试用例的状态从“未开始”或“进行中”更改为“已完成”。

    具体实现步骤如下:

    1. 登录到阿里云云效控制台。
    2. 创建一个新的工作流项目。
    3. 在项目中,创建一个新的工作流。
    4. 在工作流中,添加一个新的任务。
    5. 在新任务中,选择触发条件为“当某个事件发生时”,然后选择“缺陷状态变更”事件。
    6. 在触发条件配置中,设置当缺陷状态从“打开”变为“关闭”时触发任务。
    7. 在任务中,编写一个脚本或者调用云效API来修改测试用例的状态。例如,使用Python编写一个简单的脚本:
    import aliyun_oss
    from aliyun_oss.api import OSSApi
    
    # 初始化OSS客户端
    client = aliyun_oss.Client(<your-access-key-id>, <your-access-key-secret>, <your-bucket>)
    
    # 获取测试用例列表
    test_cases = client.list_test_cases()
    
    # 遍历测试用例并修改状态
    for test_case in test_cases:
        if test_case['status'] == '未开始' or test_case['status'] == '进行中':
            test_case['status'] = '已完成'
            client.update_test_case(test_case)
    
    1. 保存并运行工作流,等待工作流执行完成。

    这样,每当一个未通过的缺陷被关闭时,云效工作流就会自动将该缺陷关联的测试用例状态更改为“已完成”。

    2024-01-04 10:45:50
    赞同 展开评论 打赏
  • 这个不支持 ,此回答整理自钉群“云效答疑服务群”

    2024-01-03 23:51:23
    赞同 展开评论 打赏

云效,企业级一站式研发协同平台,数十万企业都在用。支持公共云、专有云和混合云多种部署形态,通过云原生新技术和研发新模式,助力创新创业和数字化转型企业快速实现研发敏捷和组织敏捷,打造“双敏”组织,实现多倍效能提升。

热门讨论

热门文章

相关电子书

更多
云效助力企业软件供应链生产效能提升 立即下载
云效 DevOps 客户案例集(公共云) 立即下载
云效专有云服务手册下载(2019最新版) 立即下载