

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Testen Sie Frameworks
<a name="test-framework-reporting"></a>

Die Themen in diesem Abschnitt zeigen, wie Sie die Testberichterstattung AWS CodeBuild für verschiedene Testframeworks einrichten.

**Topics**
+ [Einrichten von Testberichten mit Jasmine](test-report-jasmine.md)
+ [Einrichten von Testberichten mit Jest](test-report-jest.md)
+ [Einrichten von Testberichten mit Pytest](test-report-pytest.md)
+ [Richten Sie die Testberichterstattung ein mit RSpec](test-report-rspec.md)

# Einrichten von Testberichten mit Jasmine
<a name="test-report-jasmine"></a>

Das folgende Verfahren zeigt, wie die Testberichterstattung AWS CodeBuild mit dem [JasmineBDD-Testframework](http://jasmine.github.io/) eingerichtet wird. 

Das Verfahren erfordert die folgenden Voraussetzungen:
+ Sie haben ein bestehendes Projekt. CodeBuild 
+ Ihr Projekt ist ein Node.js-Projekt, das so eingerichtet ist, dass das Jasmine-Test-Framework verwendet werden kann.

Fügen Sie das [https://www.npmjs.com/package/jasmine-reporters](https://www.npmjs.com/package/jasmine-reporters)-Paket dem Abschnitt `devDependencies` der `package.json`-Projektdatei hinzu. Dieses Paket enthält eine Sammlung von JavaScript Reporter-Klassen, die mit Jasmine verwendet werden können. 

```
npm install --save-dev jasmine-reporters
```

Wenn es noch nicht vorhanden ist, fügen Sie das `test`-Skript der `package.json`-Projektdatei hinzu. Das `test` Skript stellt sicher, dass Jasmine aufgerufen wird, wenn es ausgeführt **npm test** wird.

```
{
  "scripts": {
    "test": "npx jasmine"
  }
}
```

CodeBuild unterstützt die folgenden Jasmine-Testreporter:

**JUnitXmlReporter**  
Wird verwendet, um Berichte im `JunitXml`-Format zu generieren.

**NUnitXmlReporter**  
Wird verwendet, um Berichte im `NunitXml`-Format zu generieren.

Ein Node.js-Projekt mit Jasmine hat standardmäßig ein `spec`-Unterverzeichnis, das die Jasmine-Konfiguration und Testskripte enthält. 

Um Jasmine so zu konfigurieren, dass Berichte im `JunitXML`-Format generiert werden, instanziieren Sie den `JUnitXmlReporter`-Reporter, indem Sie den folgenden Code zu Ihren Tests hinzufügen. 

```
var reporters = require('jasmine-reporters');

var junitReporter = new reporters.JUnitXmlReporter({
  savePath: <test report directory>,
  filePrefix: <report filename>,
  consolidateAll: true
});

jasmine.getEnv().addReporter(junitReporter);
```

Um Jasmine so zu konfigurieren, dass Berichte im `NunitXML`-Format generiert werden, instanziieren Sie den `NUnitXmlReporter`-Reporter, indem Sie den folgenden Code zu Ihren Tests hinzufügen. 

```
var reporters = require('jasmine-reporters');

var nunitReporter = new reporters.NUnitXmlReporter({
  savePath: <test report directory>,
  filePrefix: <report filename>,
  consolidateAll: true
});

jasmine.getEnv().addReporter(nunitReporter)
```

Die Testberichte werden in die mit*<test report directory>*/*<report filename>*angegebene Datei exportiert.

Aktualisieren Sie die folgenden Abschnitte in Ihrer `buildspec.yml`-Datei oder fügen Sie sie hinzu.

```
version: 0.2

phases:
  pre_build:
    commands:
      - npm install
  build:
    commands:
      - npm build
      - npm test

reports:
  jasmine_reports:
    files:
      - <report filename>
    file-format: JUNITXML
    base-directory: <test report directory>
```

Wenn Sie das `NunitXml`-Berichtsformat verwenden, ändern Sie den `file-format`-Wert in den folgenden Wert.

```
    file-format: NUNITXML
```

# Einrichten von Testberichten mit Jest
<a name="test-report-jest"></a>

Das folgende Verfahren zeigt, wie Sie die Testberichterstattung AWS CodeBuild mit dem [Jest-Testframework](https://jestjs.io/) einrichten. 

Das Verfahren erfordert die folgenden Voraussetzungen:
+ Sie haben ein bestehendes CodeBuild Projekt.
+ Ihr Projekt ist ein Node.js-Projekt, das so eingerichtet ist, dass das Jest-Test-Framework verwendet werden kann.

Fügen Sie das [https://www.npmjs.com/package/jest-junit](https://www.npmjs.com/package/jest-junit)Paket dem `devDependencies` Abschnitt Ihrer `package.json` Projektdatei hinzu. CodeBuild verwendet dieses Paket, um Berichte im `JunitXml` Format zu generieren.

```
npm install --save-dev jest-junit
```

Wenn es noch nicht vorhanden ist, fügen Sie das `test`-Skript der `package.json`-Projektdatei hinzu. Das `test` Skript stellt sicher, dass Jest aufgerufen wird, wenn **npm test** es ausgeführt wird.

```
{
  "scripts": {
    "test": "jest"
  }
}
```

Konfigurieren Sie Jest, um den `JunitXml`-Reporter zu verwenden, indem Sie der Jest-Konfigurationsdatei Folgendes hinzufügen. Wenn Ihr Projekt keine Jest-Konfigurationsdatei enthält, erstellen Sie eine Datei mit dem Namen `jest.config.js` im Stammverzeichnis Ihres Projekts und fügen Sie Folgendes hinzu. Die Testberichte werden in die mit*<test report directory>*/*<report filename>*angegebene Datei exportiert.

```
module.exports = {
  reporters: [
    'default',
    [ 'jest-junit', {
      outputDirectory: <test report directory>,
      outputName: <report filename>,
    } ]
  ]
};
```

Aktualisieren Sie die folgenden Abschnitte in Ihrer `buildspec.yml`-Datei oder fügen Sie sie hinzu.

```
version: 0.2

phases:
  pre_build:
    commands:
      - npm install
  build:
    commands:
      - npm build
      - npm test

reports:
  jest_reports:
    files:
      - <report filename>
    file-format: JUNITXML
    base-directory: <test report directory>
```

# Einrichten von Testberichten mit Pytest
<a name="test-report-pytest"></a>

Das folgende Verfahren zeigt, wie Sie die Testberichterstattung AWS CodeBuild mit dem [Pytest-Testframework](https://docs.pytest.org/) einrichten. 

Das Verfahren erfordert die folgenden Voraussetzungen:
+ Sie haben ein bestehendes CodeBuild Projekt.
+ Ihr Projekt ist ein Python-Projekt, das so eingerichtet ist, dass das Pytest-Test-Framework verwendet werden kann.

Fügen Sie den folgenden Eintrag entweder der `build` oder `post_build`-Phase Ihrer `buildspec.yml`-Datei hinzu. Dieser Code erkennt automatisch Tests im aktuellen Verzeichnis und exportiert die Testberichte in die mit*<test report directory>*/*<report filename>*angegebene Datei. Der Bericht verwendet das `JunitXml`-Format.

```
      - python -m pytest --junitxml=<test report directory>/<report filename>
```

Aktualisieren Sie die folgenden Abschnitte in Ihrer `buildspec.yml`-Datei oder fügen Sie sie hinzu.

```
version: 0.2

phases:
  install:
    runtime-versions:
      python: 3.7
    commands:
      - pip3 install pytest
  build:
    commands:
      - python -m pytest --junitxml=<test report directory>/<report filename>

reports:
  pytest_reports:
    files:
      - <report filename>
    base-directory: <test report directory>
    file-format: JUNITXML
```

# Richten Sie die Testberichterstattung ein mit RSpec
<a name="test-report-rspec"></a>

Das folgende Verfahren zeigt, wie Sie die Testberichterstattung AWS CodeBuild mit dem [RSpec Testframework](https://rspec.info/) einrichten. 

Das Verfahren erfordert die folgenden Voraussetzungen:
+ Sie haben ein bestehendes CodeBuild Projekt.
+ Ihr Projekt ist ein Ruby-Projekt, das für die Verwendung des RSpec Test-Frameworks eingerichtet ist.

Aktualisieren Sie die folgenden Abschnitte in Ihrer `buildspec.yml`-Datei oder fügen Sie sie hinzu. Dieser Code führt die Tests im *<test source directory>* Verzeichnis aus und exportiert die Testberichte in die mit*<test report directory>*/angegebene Datei*<report filename>*. Der Bericht verwendet das `JunitXml`-Format.

```
version: 0.2

phases:
  install:
    runtime-versions:
      ruby: 2.6
  pre_build:
    commands:
      - gem install rspec
      - gem install rspec_junit_formatter
  build:
    commands:
      - rspec <test source directory>/* --format RspecJunitFormatter --out <test report directory>/<report filename>
reports:
    rspec_reports:
        files:
            - <report filename>
        base-directory: <test report directory>
        file-format: JUNITXML
```