如何将testng报告写入html.jelly?

时间:2012-10-18 08:45:13

标签: hudson testng

我使用email-ext-plugin在hudson中生成报告,并检查$ HUDSON_ROOM \ plugins \ email-ext \ WEB-INF \ classes \ hudson \ plugins \ emailext \ templates \ html.jelly中的模板html.jelly ,但我不知道如何将testng测试结果添加到这个果冻文件中。

html.jelly中的junit脚本,有人可能知道脚本的含义,例如,it的含义是什么.JUnitTestResult? “it”对象变量来自哪里?

<j:set var="junitResultList" value="${it.JUnitTestResult}" />
<j:if test="${junitResultList.isEmpty()!=true}">
  <TABLE width="100%">
    <TR><TD class="bg1" colspan="2"><B>JUnit Tests</B></TD></TR>
    <j:forEach var="junitResult" items="${it.JUnitTestResult}">
      <j:forEach var="packageResult" items="${junitResult.getChildren()}">
        <TR><TD class="bg2" colspan="2"> Name: ${packageResult.getName()} Failed: ${packageResult.getFailCount()} test(s), Passed: ${packageResult.getPassCount()} test(s), Skipped: ${packageResult.getSkipCount()} test(s), Total: ${packageResult.getPassCount()+packageResult.getFailCount()+packageResult.getSkipCount()} test(s)</TD></TR>
        <j:forEach var="failed_test" items="${packageResult.getFailedTests()}">
          <TR bgcolor="white"><TD class="test_failed" colspan="2"><B><li>Failed: ${failed_test.getFullName()} </li></B></TD></TR>
        </j:forEach>
      </j:forEach> 
    </j:forEach>  
  </TABLE>  
<BR/>
</j:if>

1 个答案:

答案 0 :(得分:3)

it是对ScriptContentBuildWrapper类的引用。

${it.JUnitTestResult}会返回List<TestResult>个对象。