3

我正在使用 TestNG、WebDriver 和 log4j 编写一些测试,如果结果为真或假,我正在尝试记录断言的结果。例如,当我编写此代码时:

Assert.assertTrue(condition)

我想在日志中查看这是通过还是失败。现在,如果结果为 FAIL,我只能看到任何日志。有谁知道如何实现这一目标?

谢谢

4

3 回答 3

0

您可以覆盖 Assert-Class 并自己触发记录器。

于 2012-07-26T06:54:10.450 回答
0

我正在重新设计 TestNG 的断言系统,看看新架构,让我知道你的想法:

https://groups.google.com/group/testng-users/browse_thread/thread/4392868b7d1fd051

于 2012-07-28T17:02:51.770 回答
0

没有办法告诉Assert记录一个成功的断言。你可以这样做:

Assert.assertTrue(condition);
logger.info(condition ? "PASS" : "FAIL");

或子类化Assert并重新实现assertTrue为您进行日志记录。请注意,在这种情况下,您的日志行将声称位于内部Assert.assertTrue而不是调用点,因此您必须以某种方式修复它。

于 2012-07-26T07:04:33.640 回答