在TestNG中忽略消息的断言方法

时间:2013-07-18 08:38:22

标签: java testng

当测试在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创建断言消息时,我可以以某种方式注释此方法吗?

1 个答案:

答案 0 :(得分:1)

我猜您的TestHelper.verifyXYZwasDisplayed()方法中包含assert*()。这意味着抛出的AssertionError将指向使用此断言的行。

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

assertTrue(TestHelper.verifyXYZwasDisplayed(blah));