使用JavaDoc丰富JUnit测试报告

使用JavaDoc丰富JUnit测试报告,第1张

使用JavaDoc丰富JUnit测试报告

实现此目标的一种方法是使用自定义RunListener,但要注意的是,使用批注而不是javadoc会更容易。您将需要具有一个自定义注释,例如:

@TestDoc(text="tests for XXX-342, fixes customer issue blahblah")@Testpublic void testForReallyBigThings() {    // stuff}

RunListener
监听测试事件,例如测试开始,测试结束,测试失败,测试成功等。

public class RunListener {    public void testRunStarted(Description description) throws Exception {}    public void testRunFinished(Result result) throws Exception {}    public void testStarted(Description description) throws Exception {}    public void testFinished(Description description) throws Exception {}    public void testFailure(Failure failure) throws Exception {}    public void testAssumptionFailure(Failure failure) {}    public void testIgnored(Description description) throws Exception {}}

Description包含应用于测试方法的注释列表,因此使用上面的示例,您可以使用以下方法获取Annotation
TestDoc:

description.getAnnotation(TestDoc.class);

并正常提取文本。

然后,您可以使用

RunListener
生成所需的文件,以及该测试的专用文本,测试是通过还是失败,是否被忽略,花费的时间等。这将是您的自定义报告。

然后,在surefire中,您可以使用以下命令指定自定义侦听器

<plugin>  <groupId>org.apache.maven.plugins</groupId>  <artifactId>maven-surefire-plugin</artifactId>  <version>2.10</version>  <configuration>    <properties>      <property>        <name>listener</name>        <value>com.mycompany.MyResultListener,com.mycompany.MyResultListener2</value>      </property>  </configuration></plugin>

这是来自MavenSurefire插件,使用JUnit,使用自定义侦听器和报告器

这种解决方案的缺点是,就格式返回而言,就回车而言您没有javadoc的灵活性,但是它的优点是文档位于一个特定的位置,即注释TestDoc。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5131334.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-17
下一篇 2022-11-17

发表评论

登录后才能评论

评论列表(0条)

保存