当测试在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创建断言消息时,我可以以某种方式注释此方法吗?
答案 0 :(得分:1)
我猜您的TestHelper.verifyXYZwasDisplayed()
方法中包含assert*()
。这意味着抛出的AssertionError
将指向使用此断言的行。
相反,让它返回一个布尔值,如果条件满足则为true,然后使用:
assertTrue(TestHelper.verifyXYZwasDisplayed(blah));