问题描述
我的团队刚刚开始使用X射线,我们正在建立我们的管道。但是,在执行此操作时,我注意到如果我通过REST API向X-Ray提交Junit xml文件,它将为系统中尚未存在的任何测试数据创建新测试。
对于不存在执行测试的测试,是否有办法让X射线忽略测试结果?我不希望它不断创建额外的测试。
例如:
- (Jira / X-Ray服务器)TestExecution MyExecution具有测试testA
- 从客户端,我提交一个Junit xml文件,其中包含MyExecution TestExecution中的testA和testB的结果
- testB现在位于MyExecution下的服务器上
我希望能够提交Junit xml文件而不创建额外的测试。
解决方法
每当您使用REST API或任何可用的CI插件导入自动化结果时,Xray都会自动设置(“通用”)测试实体。 流程详细here。
Xray尝试为自动化测试找到唯一的标识符;对于JUnit,它基于完整的类名加上测试方法的名称;这将成为“通用定义”字段的一部分。 here更详细地描述了JUnit的过程。
它如何适用于不同的测试自动化框架/报告格式,这是相似的,并在相应的文档页面上进行了详细说明。 如果找到“通用”测试,则该测试将被重用,并针对该测试创建测试运行。否则,测试将自动设置。
此过程不可配置。但是,从理论上讲,如果您用于提交自动化结果的用户无法创建测试问题,那么您可能会拥有所需的东西。
这类事情通常是不可配置的,因为它们通常是应用通常在团队内部讨论过的good practices的结果。