Java 您能否使assertTrue错误消息更具体?

Java 您能否使assertTrue错误消息更具体?,java,testng,appium,assert,assertion,Java,Testng,Appium,Assert,Assertion,我经常使用testNG的assertTrue来验证事务是否正确 public void verifyAmount(WebElement element, String someText){ assertTrue(element.getText().contains(someText)); } 当它失败时,它会说 java.lang.AssertionError: did not expect to find [true] but found[false] 是否有可能更改断言错误来说明到底哪里

我经常使用testNG的assertTrue来验证事务是否正确

public void verifyAmount(WebElement element, String someText){
assertTrue(element.getText().contains(someText));
}
当它失败时,它会说

java.lang.AssertionError: did not expect to find [true] but found[false]
是否有可能更改断言错误来说明到底哪里出了问题,而不仅仅是正确/错误的陈述?有没有可能让这个信息更具体一些? 有没有一种方法可以使断言错误说:

java.lang.AssertionError: did not expect to find [10.000 $] but found[3000 $]
您可以将此:

public void verifyAmount(WebElement element, String someText){
assertTrue(element.getText().contains(someText));
}
进入:

并传递您认为应该在那里给出的错误消息

编辑:我习惯使用其他断言方法,它们将消息作为第一个参数,但Long Nguyen的回答是正确的:TestNG接受消息作为assertTrue的最后一个参数。

查看文档,您可以看到可以在条件之后添加消息


publicstaticvoidasserttrue(布尔条件,字符串消息)

谢谢大家的回答

 assertTrue(string.contains(property), errorMessage);

作业是否执行

因为它并不总是真正相等的,元素对原始字符串进行了添加,所以我必须使用“contains”来代替Stultuske的答案。很高兴见到你
 assertTrue(string.contains(property), errorMessage);