生成JUnit报告使用的XML文件

Aaz*_*zim 11 xml testing junit testng selenium

我想创建JUnit/TestNG PROGRAMMATICALLY生成的测试报告.所以,这排除了ANT.我主要关注的是生成由Junit在执行测试用例时创建的XML文件.我已经读过RunListener可以帮助我实现这一点,但我还没弄清楚怎么做?我正在使用Selenium创建我的测试用例.

如何生成由JUnit创建的XML文件?

Mat*_*ell 10

JUnit不生成XML报告.JUnit没有标准的XML输出格式.

其他工具生成XML,例如Ant/Maven.因此,您需要做的第一件事就是确定您想要哪种形式的XML文件,就像您在创建文件后要对文件做什么一样.

而且,实际上,您对编程的限制并不排除ANT.您可以以编程方式调用ant(请参阅从java调用ant,然后在ant终止后返回java).这可能是生成蚂蚁兼容文件的最简单方法.

如果您希望创建自己的XML文件,则可以创建一个扩展RunListener的类,然后通过调用JUnitCore#run()或类似方法来运行测试.

public void main(String... args) {
    JUnitCore core= new JUnitCore();
    core.addListener(new RingingListener());
    core.run(MyTestClass.class);
}
Run Code Online (Sandbox Code Playgroud)

您的RunListener将只发出适当的XML.这很容易理解:覆盖方法testRunStarted()等并写出XML.有关它如何工作的示例,请参阅TextListener,它执行相同的操作,但是对于文本.