JUnit的测试报告XML文件格式是什么样的

admin 百科 16
JUnit测试报告XML以为根元素,包含name、tests、failures、errors、skipped、time属性,每个含name、classname、time,失败时嵌套并含message、type和堆栈。

JUnit的测试报告XML文件格式是什么样的-第1张图片-佛山资讯网

JUnit 的测试报告 XML 文件(通常由 maven-surefire-plugingradle test 生成)遵循一套约定俗成的结构,不是 W3C 官方标准,但被主流 CI 工具(如 Jenkins、GitLab CI)广泛支持。最常见的是 TEST-*.xml 格式,根元素为 <testsuite></testsuite>

下面是一个典型、精简但合法的 JUnit 测试报告 XML 示例,并附关键说明:

<?xml version="1.0" encoding="UTF-8"?>
<testsuite name="com.example.CalculatorTest" time="0.023" tests="3" failures="1" errors="0" skipped="0">
  <properties>
    <property name="java.runtime.name" value="OpenJDK Runtime Environment"/>
    <property name="java.version" value="17.0.1"/>
  </properties>
  <testcase name="testAdd" classname="com.example.CalculatorTest" time="0.005"/>
  <testcase name="testSubtract" classname="com.example.CalculatorTest" time="0.003"/>
  <testcase name="testDivideByZero" classname="com.example.CalculatorTest" time="0.002">
    <failure message="Expected ArithmeticException" type="org.junit.jupiter.api.AssertionFailedError">
      java.lang.AssertionFailedError: Expected ArithmeticException
        at com.example.CalculatorTest.testDivideByZero(CalculatorTest.java:24)
    </failure>
  </testcase>
</testsuite>

登录后复制

<testsuite></testsuite> 是顶层容器

必须包含以下属性:

  • name:测试类全限定名(如 com.example.CalculatorTest
  • tests:总用例数(含成功、失败、错误、跳过)
  • failures:断言失败(AssertionError 类型)的数量
  • errors:非断言异常(如 NullPointerExceptionRuntimeException)的数量
  • skipped:被 @Disabled 或条件跳过的数量
  • time:执行总耗时(秒,保留三位小数)

<testcase></testcase> 描述单个测试方法

每个 <testcase></testcase> 必须有:

标签: java git 工具 ai jenkins gitlab

发布评论 0条评论)

还木有评论哦,快来抢沙发吧~