java在日志或报表中嵌入方法的内容
在Java中,有没有一种通用的方法可以通过任何方式将方法的代码嵌入日志中?我在Cumber工作,尽管它倾向于(或者是?)糟糕的做法是,合规部门希望看到报告中打印的“Then”语句背后的断言(他们无法访问源代码)。写日志是很容易的,但是我怎么能以一种通用的方式在“@Then”后面的方法中读取所有内容呢
因此,让您了解一个示例方法:
@Then("^my profile information is retrieved with success")
public void validateProfileInformation() {
assertThat(..).isEqualTo(..);
assertThat(..).isEqualTo(..);
assertThat(..).isEqualTo(..);
assertThat(..).isEqualTo(..);
assertThat(..).isEqualTo(..);
assertThat(..).isEqualTo(..);
if (this){
x = y;
}
}
需要在日志中写入的内容:
SOME HEADER TEXT
assertThat(..).isEqualTo(..);
assertThat(..).isEqualTo(..);
assertThat(..).isEqualTo(..);
assertThat(..).isEqualTo(..);
assertThat(..).isEqualTo(..);
assertThat(..).isEqualTo(..);
**Optionally:**
if (this){
x = y;
}
所以我真的需要未执行的代码(当测试失败和通过时),而不需要结果。最好像通用方法或拦截器一样,这样就可以在整个项目中应用它,而不必将它添加到每个方法中。如能向正确方向推进,将不胜感激
# 1 楼答案
马文波姆
AbstractTestSourceErrorLogger
SimpleTestSourceErrorLogger
SimpleLoggerTest
JUnitEclipse输出控制台
mvn test
输出PS:使用JUnit,因为我不熟悉Cucumber。但你明白了