How to add a CodeBuild report for failsafe JUnit tests?

0

For my integration tests that are run by the failsafe Maven plugin, I added the section "IntegrationReports" in my buildspec file:

reports:
  SurefireReports: #surefire junit reports
    files:
      - '**/*'
    base-directory: 'target/surefire-reports'
  IntegrationReports: #failsafe junit reports
    files:
      - '**/*'
    base-directory: 'target/failsafe-reports'

The surefire reports are generated as expected but for the failsafe the build is failing with a message similar to this:

CLIENT_ERROR: Error in UPLOAD_ARTIFACTS phase: [IntegrationReports: [error processing report: [/codebuild/output/src415328417/target/failsafe-reports/failsafe-summary.xml: expected element type <testsuite> but have <failsafe-summary>]]]

The failsafe-summary.xml is generated by the Maven plugin maven-failsafe-plugin version 3.0.0-M8:

<?xml version="1.0" encoding="UTF-8"?>
<failsafe-summary xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/failsafe-summary.xsd" result="null" timeout="false">
    <completed>9</completed>
    <errors>0</errors>
    <failures>0</failures>
    <skipped>0</skipped>
    <failureMessage xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
</failsafe-summary>

Is there a way to show these reports?

posta un anno fa206 visualizzazioni
1 Risposta
0
Risposta accettata

The solution is actually simple: all I needed to do is eliminate the failsafe-summary.xml file from the list of reports. The relevant buildspec fragment becomes:

reports:
  SurefireReports: #surefire junit reports
    files:
      - '**/TEST*.xml'
    base-directory: 'target/surefire-reports'
  IntegrationReports: #failsafe junit reports
    files:
      - '**/TEST*.xml'
    base-directory: 'target/failsafe-reports'
con risposta un anno fa

Accesso non effettuato. Accedi per postare una risposta.

Una buona risposta soddisfa chiaramente la domanda, fornisce un feedback costruttivo e incoraggia la crescita professionale del richiedente.

Linee guida per rispondere alle domande