这是我们要做的事情:
通过 REST API 创建一个新的测试,测试类型为 Automated[Generic] 并确保测试定义字段按要求填充(classpath+'.'+class name)。假设此测试的测试密钥是 MYPROJ-999。
我们运行自动化测试并为 #1 中创建的相同测试生成 Junit xml report.xml。
我们使用 REST API 发布结果。
curl -H "Content-Type: multipart/form-data" -u user:pwd -F "file=@report.xml" https://jira.my.com/rest/raven/1.0/import/execution/junit ?projectKey=MYPROJ
预期结果:
MYPROJ-999 的结果应该更新为 PASS/FAILED,并且应该创建一个新的测试执行问题。不应创建新的测试。
实际结果:
API 正在创建新测试,而不是更新现有测试 MYPROJ-99。
有趣的观察是,如果我们使用 Jira UI 而不是使用 REST API 创建测试,它可以正常工作。不会创建重复的测试。
据我们所知,通过 UI 创建的测试和通过 REST API 创建的测试看起来完全一样。因此,我们无法理解为什么通过 API 创建的测试表现不同。