Ein Unternehmen definiert seine App mit dem AWS Cloud Development Kit (CDK) und stellt sie über eine Pipeline bereit, die mit AWS CodePipeline und AWS CodeBuild erstellt wurde. Es möchte der Pipeline Unit-Tests hinzufügen und sicherstellen, dass die Bereitstellung nur fortgesetzt wird, wenn keiner der Unit-Tests fehlschlägt. Welche zwei Schritte erzwingen diese Anforderung?
Wählen Sie eine Antwort
Tippen Sie auf eine Option, um Ihre Antwort zu überprüfen.
Richtige Antwort: Ändern Sie die Build-Phase-Befehle von CodeBuild, um zuerst die Tests auszuführen und dann die CDK-Anwendung bereitzustellen. Konfigurieren Sie die OnFailure-Eigenschaft der CodeBuild-Phase auf ABORT., Schreiben Sie Unit-Tests mit der AWS CDK assertions library und verwenden Sie die template.hasResourceProperties-Assertion, um zu überprüfen, ob Ressourcen die erwarteten Eigenschaften haben..
Warum dies die Antwort ist
Um sicherzustellen, dass Unit-Tests vor der Bereitstellung ausgeführt werden und die Pipeline bei Fehlern stoppt, müssen die Build-Phase-Befehle in CodeBuild so geändert werden, dass die Tests zuerst ausgeführt werden. Wenn ein Test fehlschlägt, muss die CodeBuild-Phase so konfiguriert werden, dass sie mit OnFailure: ABORT abbricht. Dies verhindert, dass die Bereitstellung fortgesetzt wird. Die Unit-Tests selbst sollten mit der AWS CDK assertions library geschrieben werden, insbesondere mit template.hasResourceProperties, um die korrekte Konfiguration der AWS-Ressourcen im CloudFormation-Template zu überprüfen. -rollback true beim cdk deploy-Befehl ist für Rollbacks nach einer fehlgeschlagenen Bereitstellung gedacht, nicht für das Stoppen der Pipeline vor der Bereitstellung aufgrund fehlgeschlagener Tests. --require-approval any-change erfordert eine manuelle Genehmigung und stoppt die Pipeline nicht automatisch bei Testfehlern. cdk diff ist nützlich, um Änderungen zu überprüfen, aber es ist kein Unit-Test, der die Pipeline bei Fehlern stoppt.
Bestehen Sie Ihre Prüfung – ohne endlose Antwortsuche
Erhalten Sie jede verifizierte Frage und Erklärung für diese Prüfung an einem Ort und sparen Sie Stunden der Vorbereitung. Über 1.000 Zertifizierungen · Über 20 Sprachen · Kostenloser Start.
Bestehen Sie Ihre Prüfung schneller → Keine Karte erforderlich