java - 如何使用 JUnit 和 Maven Surefire 插件向测试用例添加数据
问题描述
我有一个正在运行的带有 JUnit 测试的 Maven 项目。Maven Surefire 插件在测试后会删除 xml 文件。除了属性和日志记录之外,这些 xml 文件还包括以下信息:
<testcase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
name="methodNameForTest"
classname="com.my.test.project.Testclass"
time="20.931">
<error type="java.lang.NullPointerException">java.lang.NullPointerException</error>
</testcase>
有人可以解释一下数据是如何从 JUnit 写入这些括号的常用方式以及如何向其中添加更多数据的吗?
顺便说一句,用这些词搜索文件无济于事。在我的项目中找不到任何东西。
先感谢您
解决方案
您不能将自定义消息添加到由maven-surefire-plugin
. 您可以获得的最接近的方法是配置此插件以将您的System.out.println()
呼叫重定向到文本文件。这是在你的配置pom.xml
帮助下redirectTestOutputToFile
配置的,如下图:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<redirectTestOutputToFile>true</redirectTestOutputToFile>
</configuration>
</plugin>
</plugins>
</build>
默认情况下,这将创建target/surefire-reports/<test-name>-output.txt
. 来自您的测试的任何调用System.out.println(...)
都将被重定向到该文件。
推荐阅读
- android - java.lang.OutOfMemoryError:无法在 handlerthread.start() 分配 JNI Env
- android - 如何从 Facebook 墙贴中隐藏应用程序名称
- python - 从已经重新采样的系列中获取规则
- azure - 功能 App Premium Elastic Plan wrt Scale-up 和 Scale-out 设置中的 EP1 实例成本
- angularjs - 无法让 Angular 应用程序在布局的 MVC 视图中工作
- algorithm - 在时间复杂度方面采用最佳方法从字符矩阵形成字符串的方法有多少?
- javascript - Gatsby:使用MDX时索引页“/”加载失败,其他路径加载
- android - 我的自定义 RecyclerView 适配器有什么错误?
- java - 示例:使用 Volley 以编程方式发送 sendgrid 电子邮件
- csv - 同时创建和编写两个CSV golang