0

当测试在 TestNG 测试方法中使用断言失败时,它会输出一条包含方法名称的消息,如下所示

MyTestFixture:49->when_clicking_x_y_happens:49 expected:<Foo...> but was:<Bar...>

到目前为止一切都很好。但是,当在测试方法之外的其他方法中进行断言时,它会显示一条奇怪的消息:

MyTestFixture:49->TestHelper.verifyXYZwasDisplayed:49 expected:<Foo...> but was:<Bar...>

这里verifyXYZwasDisplayed来自TestHelper类的信息显示在消息中。如果消息包含测试方法名称会更有帮助。当 TestNG 创建断言消息时,我可以以某种方式注释此方法被忽略吗?

4

1 回答 1

1

我猜你的TestHelper.verifyXYZwasDisplayed()方法有一个assert*()。这意味着AssertionErrorthrow 将指向使用此断言的行。

相反,让它返回一个布尔值,如果满足条件,则为真,然后使用:

assertTrue(TestHelper.verifyXYZwasDisplayed(blah));
于 2013-07-18T08:44:18.750 回答