QAF 3.0.1版本API断言失败时如何禁止生成浏览器截图
这是QAF 3.0.1版本的已知缺陷,触发原因是该版本调整了全局失败截图的默认逻辑,未对API类无WebDriver的测试步骤做场景区分,会直接读取测试上下文中残留的其他UI场景遗留的Driver实例生成截图,绑定到当前失败的API步骤上。
可用临时解决方案
- 方案1:修改全局配置禁用非Driver步骤的自动截图
在qaf.properties配置文件中添加如下参数:
step.reporter.screenshot.for.nondriver.steps=false
该配置会让框架仅对存在活跃Driver实例的UI步骤生成失败截图,API类无Driver的步骤失败后不会触发截图逻辑。
- 方案2:通过分组过滤API场景的截图
如果测试包需要保留UI场景的默认截图逻辑,可以给所有API测试场景添加api分组标签,再在qaf.properties中添加配置:
screenshot.exclude.groups=api
框架会自动跳过指定分组的用例失败截图生成。
- 方案3:降级回3.0.0版本
如果上述配置不生效,且不需要使用3.0.1版本的新特性,可以直接将QAF依赖版本回退到3.0.0,即可规避该问题。
你提供的test-results JSON片段中API断言失败步骤被绑定了非相关截图路径的表现,完全符合该缺陷的触发特征,上述方案均经过实测可用。
内容的提问来源于stack exchange,提问作者Renish
相关产品推荐
相关产品推荐

