Bewertung von Schnittstellenänderungen mit Snapshot-Tests - Amazon CodeCatalyst

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.

Bewertung von Schnittstellenänderungen mit Snapshot-Tests

Generierte Snapshot-Tests in mehreren Konfigurationen Ihres Blueprints werden unterstützt.

Blueprints unterstützen Snapshot-Tests für Konfigurationen, die Sie als Blueprint-Autor bereitgestellt haben. Bei den Konfigurationen handelt es sich um teilweise Überschreibungen, die über der Datei defaults.json im Stammverzeichnis eines Blueprints zusammengeführt werden. Wenn Snapshot-Tests aktiviert und konfiguriert sind, synthetisiert der Build- und Testprozess die angegebenen Konfigurationen und überprüft, ob sich die synthetisierten Ausgaben gegenüber dem Referenz-Snapshot nicht geändert haben. Den Snapshot-Testcode finden Sie im Blueprints-Repository. CodeCatalyst GitHub

Um Snapshot-Tests zu aktivieren

  1. Aktualisieren Sie in der .projenrc.ts Datei das Eingabeobjekt ProjenBlueprint mit den Dateien, für die Sie einen Snapshot erstellen möchten. Zum Beispiel:

    { .... blueprintSnapshotConfiguration: { snapshotGlobs: ['**', '!environments/**', '!aws-account-to-environment/**'], }, }
  2. Synthetisieren Sie den Blueprint erneut, um TypeScript Dateien in Ihrem Blueprint-Projekt zu erstellen. Bearbeiten Sie die Quelldateien nicht, da sie von Projen verwaltet und neu generiert werden. Verwenden Sie den folgenden Befehl:

    yarn projen
  3. Navigieren Sie zu dem src/snapshot-configurations Verzeichnis, um die default-config.json Datei mit einem leeren Objekt anzuzeigen. Aktualisieren oder ersetzen Sie die Datei durch eine oder mehrere Ihrer eigenen Testkonfigurationen. Jede Testkonfiguration wird dann mit der defaults.json Projektdatei zusammengeführt, synthetisiert und beim Testen mit Schnappschüssen verglichen. Verwenden Sie zum Testen den folgenden Befehl:

    yarn test

    Wenn Sie zum ersten Mal einen Testbefehl verwenden, wird die folgende Meldung angezeigt:Snapshot Summary › NN snapshots written from 1 test suite. Bei nachfolgenden Testläufen wird überprüft, ob sich die synthetisierte Ausgabe gegenüber den Snapshots nicht geändert hat, und es wird die folgende Meldung angezeigt:. Snapshots: NN passed, NN total

    Wenn Sie Ihren Blueprint absichtlich ändern, um eine andere Ausgabe zu erzeugen, führen Sie den folgenden Befehl aus, um die Referenz-Snapshots zu aktualisieren:

    yarn test:update

Bei Snapshots wird davon ausgegangen, dass die synthetisierten Ausgaben zwischen den einzelnen Durchläufen konstant sind. Wenn Ihr Blueprint Dateien generiert, die variieren, müssen Sie diese Dateien von den Snapshot-Tests ausschließen. Aktualisieren Sie das blueprintSnapshotConfiguration Objekt Ihres ProjenBluerpint Eingabeobjekts, um die snapshotGlobs Eigenschaft hinzuzufügen. Bei der snapshotGlobs Eigenschaft handelt es sich um ein Array von Globs, das bestimmt, welche Dateien in die Snapshot-Erstellung aufgenommen oder ausgeschlossen werden.

Anmerkung

Es gibt eine Standardliste von Globs. Wenn Sie Ihre eigene Liste angeben, müssen Sie möglicherweise die Standardeinträge explizit wiederherstellen.