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.
Tests für CI/CD-Pipelines
Die beiden Arten automatisierter Tests, auf die in Bereitstellungspipelines häufig Bezug genommen wird, sind Komponententests und Integrationstests. Es gibt jedoch viele Arten von Tests, die Sie auf einer Codebasis und in der Entwicklungsumgebung ausführen können. Die AWS Deployment Pipeline Reference Architecture
-
Komponententest — Diese Tests erstellen Anwendungscode und führen ihn aus, um zu überprüfen, ob er erwartungsgemäß funktioniert. Sie simulieren alle externen Abhängigkeiten, die in der Codebasis verwendet werden. Beispiele für Unit-Test-Tools sind JUnit
Jest und Pytest . -
Integrationstest — Diese Tests verifizieren, dass die Anwendung die technischen Anforderungen erfüllt, indem sie anhand einer bereitgestellten Testumgebung getestet werden. Beispiele für Integrationstesttools sind Cucumber
, vRest NG und Integ-Tests (for). AWS CDK -
Akzeptanztest — Bei diesen Tests wird anhand einer bereitgestellten Testumgebung überprüft, ob die Anwendung die Benutzeranforderungen erfüllt. Zu den Tools für Akzeptanztests gehören beispielsweise Cypress
und Selenium. -
Synthetischer Test — Diese Tests werden kontinuierlich im Hintergrund ausgeführt, um Traffic zu generieren und zu überprüfen, ob das System fehlerfrei ist. Beispiele für synthetische Testtools sind Amazon CloudWatch Synthetics und Dynatrace
Synthetic Monitoring. -
Leistungstest — Diese Tests simulieren die Produktionskapazität. Sie ermitteln, ob die Anwendung die Leistungsanforderungen erfüllt, und vergleichen die Kennzahlen mit der Leistung in der Vergangenheit. Zu den Tools für Leistungstests gehören beispielsweise Apache JMeter
, Locust und Gatling . -
Resilienztest — Diese Tests, auch Chaostests genannt, führen zu Fehlern in Umgebungen, um Risikobereiche zu identifizieren. Perioden, in denen die Fehler auftreten, werden dann mit Perioden ohne Fehler verglichen. Zu den Tools für Resilienz-Tests gehören beispielsweise AWS Fault Injection Service
Gremlin . -
Statischer Anwendungssicherheitstest (SAST) — Diese Tests analysieren Code auf Sicherheitsverletzungen wie SQL-Injection
oder Cross-Site Scripting (XSS). Beispiele für SAST-Tools sind Amazon CodeGuru und SonarQube Checkmarx . -
Dynamischer Anwendungssicherheitstest (DAST) — Diese Tests werden auch als Penetrationstests oder Penetrationstests bezeichnet. Sie identifizieren Sicherheitslücken wie SQL-Injection oder XSS in einer bereitgestellten Testumgebung. Beispiele für DAST-Tools sind Zed Attack Proxy (ZAP
) und HCL. AppScan Weitere Informationen finden Sie unter Penetrationstests.
Nicht alle CI/CD-Pipelines führen alle diese Tests durch. Eine Pipeline sollte jedoch mindestens Unit-Tests und SAST-Tests auf der Codebasis sowie Integrations- und Akzeptanztests in einer Testumgebung ausführen.