【问题标题】:Automatic creation of Test Plan in Azure TFS using python使用 python 在 Azure TFS 中自动创建测试计划
【发布时间】:2021-02-18 13:47:46
【问题描述】:

我在 Azure TFS 中通过 python 中的 POST 方法自动创建测试计划时遇到问题。 当我在 UI 中手动创建它时,一切正常,当我尝试找到这个工作项时,例如。 http://xxx/tfs/test/Project/_apis/test/plans/266801?api-version=5.0 - 一切正常,我得到 JSON。

我的代码:

def TestPlan(title=None, description=None):
    def wrapper(func):
        def inner_wrapper(*args, **kwargs):
            authorization = str(base64.b64encode(bytes(':' + token, 'ascii')), 'ascii')
            headers = {
                'Content-Type': 'application/json-patch+json',
                'Authorization': 'Basic ' + authorization
            }
            URL = url + '/' + project + '/_apis/wit/workitems/$Test Plan?' + api_version
            body = [
                {
                    "op": "add",
                    "path": "/fields/System.Title",
                    "value": title
                },
                {
                    "path": "/fields/System.Description",
                    "op": "add",
                    "value": description
                },
                {
                    "path": "/fields/Microsoft.VSTS.TCM.AutomatedTestId",
                    "op": "add",
                    "value": automationId(func)
                }
            ]
            requests.post(URL, json=body, headers=headers)
            func(*args, **kwargs)
        return inner_wrapper
    return wrapper

当我使用我的代码时,会创建工作项,但仅在 UI 中。当我尝试在 API 中找到它时,出现错误: {"$id":"1","innerException":null,"message":"Test plan 266800 not found.","typeName":"Microsoft.TeamFoundation.TestManagement.WebApi.TestObjectNotFoundException, Microsoft.TeamFoundation.TestManagement.WebApi","typeKey":"TestObjectNotFoundException","errorCode":0,"eventId":3000} 当我在 UI 中单击此工作项时,我有这个: 我想我需要在创建测试计划期间添加一个 rootSuite,但是该怎么做呢? 你能帮帮我吗?

【问题讨论】:

    标签: python tfs azure-devops test-plan


    【解决方案1】:

    为什么使用工作项 API 创建测试计划 (_apis/wit/workitems)?

    您必须使用测试计划 API (_apis/testplan/plans)。以下是示例:Test Plans - Create

    【讨论】:

    • 就是这样。我没有注意到我使用了错误的网址。谢谢。
    猜你喜欢
    • 1970-01-01
    • 2017-07-29
    • 2022-12-20
    • 2021-03-11
    • 2018-07-06
    • 1970-01-01
    • 1970-01-01
    • 2021-07-07
    • 1970-01-01
    相关资源
    最近更新 更多