我想使用 REST API 创建一个简单的测试用例手动测试结果报告:
我使用以下查询
(我们服务器最新支持的API版本是5.1)
回复部分如下。
我的问题是,actionResults 不按测试用例步骤的顺序排列。 查看评论,我可以看到步骤 6 actionResult 在步骤 2 之后,然后是步骤 8,然后是步骤 4 等等。由于我们使用共享步骤,这使得情况变得更加复杂。
有没有办法可以将测试用例步骤与迭代详细信息中的相应结果相匹配?
{
"count": 1,
"value": [
{
"id": 100000,
...
"iterationDetails": [
{
"id": 1,
"outcome": "Failed",
"errorMessage": "",
"durationInMs": 171574,
"actionResults": [
{
"actionPath": "00000002",
"iterationId": 1,
"url": "http://myserver.is.mycompany.net:8080/tfs/MyCollection/LMTest/_apis/test/Runs/192557/Results/100000/Iterations/1/ActionResults/00000002",
"outcome": "Failed",
"errorMessage": "step 1 comment",
},
{
"actionPath": "00000003",
"iterationId": 1,
"url": "http://myserver.is.mycompany.net:8080/tfs/MyCollection/LMTest/_apis/test/Runs/192557/Results/100000/Iterations/1/ActionResults/00000003",
"outcome": "Failed",
"errorMessage": "step 2 comment",
},
{
"actionPath": "00000004",
"iterationId": 1,
"url": "http://myserver.is.mycompany.net:8080/tfs/MyCollection/LMTest/_apis/test/Runs/192557/Results/100000/Iterations/1/ActionResults/00000004",
"outcome": "Failed",
"errorMessage": "step 6 comment",
},
{
"actionPath": "00000005",
"iterationId": 1,
"url": "http://myserver.is.mycompany.net:8080/tfs/MyCollection/LMTest/_apis/test/Runs/192557/Results/100000/Iterations/1/ActionResults/00000005",
"outcome": "Failed",
"errorMessage": "step 8 comment",
},
{
"actionPath": "00000006",
"iterationId": 1,
"url": "http://myserver.is.mycompany.net:8080/tfs/MyCollection/LMTest/_apis/test/Runs/192557/Results/100000/Iterations/1/ActionResults/00000006",
"outcome": "Failed",
"errorMessage": "step 4 comment",
},
....
}
}
]
}
根据结果-列表,
是测试用例工作项中测试步骤的路径标识符。actionPath
它按照步骤添加到测试用例的顺序递增,而不是按照步骤实际出现在测试用例中的顺序。
例如,您将第一步“StepA”添加到测试用例中。此时,这一步的actionPath
就是
00000002
。然后,您在“StepA”之前插入了一个新步骤“StepB”。此时,“StepB”的
actionPath
为
00000003
。 “StepA”的
actionPath
保持不变,仍然是
00000002
。API响应体中,
actionResults
中的对象按
actionPath
升序排序。实际执行顺序是先运行StepB,再运行StepA。