如何在 Playwright TypeScript 测试中针对非严重故障创建警告断言?

问题描述 投票:0回答:1

如何在 Playwright TypeScript 测试中针对非严重故障创建警告断言?

我正在使用 TypeScript 进行 Playwright 测试,我需要一种方法来处理抛出警告的断言,而不是让测试彻底失败。这是场景:

  1. 断言上下文:我想在测试中对 CSS、DOM 属性(当然还有其他片状属性)和其他非关键元素执行断言。

  2. 当前问题:使用传统的硬断言或软断言时,失败会导致测试立即失败(硬断言)或完成后失败(软断言)。

  3. 期望的行为:我希望这些断言能够发出警告,而不是使测试失败。这意味着如果断言失败,理想情况下测试应该继续,并且测试结果应标记为绿色/黄色或带有警告指示器,而不是红色。

  4. 技术堆栈:我使用 Playwright 和 TypeScript 进行自动化测试。

  5. 示例用例:我正在寻找的一个示例是检查 CSS 属性或 DOM 属性值时;如果它与预期值不匹配,我想记录一个警告但不让测试失败。

我研究了软断言和自定义错误处理,但尚未找到简单的解决方案。

这至关重要,因为我在 CI/CD 管道上运行了 1500 个测试。当测试由于不稳定的 CSS 或属性值而失败时,就会造成混乱。我不想删除这些测试,而是想用最少的断言保留它们。

任何使用 Playwright 和 TypeScript 的指导或代码示例将不胜感激!

可以吗?

typescript automated-tests warnings playwright assert
1个回答
0
投票

如果您知道某个测试经常失败,您可以使用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
        }
© www.soinside.com 2019 - 2024. All rights reserved.