如何在 Playwright TypeScript 测试中针对非严重故障创建警告断言?
我正在使用 TypeScript 进行 Playwright 测试,我需要一种方法来处理抛出警告的断言,而不是让测试彻底失败。这是场景:
断言上下文:我想在测试中对 CSS、DOM 属性(当然还有其他片状属性)和其他非关键元素执行断言。
当前问题:使用传统的硬断言或软断言时,失败会导致测试立即失败(硬断言)或完成后失败(软断言)。
期望的行为:我希望这些断言能够发出警告,而不是使测试失败。这意味着如果断言失败,理想情况下测试应该继续,并且测试结果应标记为绿色/黄色或带有警告指示器,而不是红色。
技术堆栈:我使用 Playwright 和 TypeScript 进行自动化测试。
示例用例:我正在寻找的一个示例是检查 CSS 属性或 DOM 属性值时;如果它与预期值不匹配,我想记录一个警告但不让测试失败。
我研究了软断言和自定义错误处理,但尚未找到简单的解决方案。
这至关重要,因为我在 CI/CD 管道上运行了 1500 个测试。当测试由于不稳定的 CSS 或属性值而失败时,就会造成混乱。我不想删除这些测试,而是想用最少的断言保留它们。
任何使用 Playwright 和 TypeScript 的指导或代码示例将不胜感激!
可以吗?
如果您知道某个测试经常失败,您可以使用skip关键字对其进行标记。
test.describe.skip('Name of test that fails often')
软断言不应产生问题。如果测试通过软断言或硬断言失败 - “它会造成混乱”是什么意思?
您始终可以使用 try 和 catch 包装出现错误的代码部分:
try {
expect.soft(4).toBeGreaterThan(6)
} catch (error) {
// print information to log here
}