View a markdown version of this page

Führen Sie parallele Tests in Batch-Builds aus - AWS CodeBuild

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.

Führen Sie parallele Tests in Batch-Builds aus

Sie können es verwenden AWS CodeBuild , um parallele Tests in Batch-Builds auszuführen. Die parallele Testausführung ist ein Testansatz, bei dem mehrere Testfälle gleichzeitig in verschiedenen Umgebungen, Computern oder Browsern ausgeführt werden, anstatt sequentiell ausgeführt zu werden. Dieser Ansatz kann die Gesamtdauer der Testausführung erheblich reduzieren und die Testeffizienz verbessern. CodeBuildIn können Sie Ihre Tests auf mehrere Umgebungen aufteilen und gleichzeitig ausführen.

Zu den Hauptvorteilen der parallelen Testausführung gehören:

  1. Verkürzte Ausführungszeit — Tests, die nacheinander Stunden in Anspruch nehmen würden, können innerhalb von Minuten abgeschlossen werden.

  2. Bessere Ressourcennutzung — Nutzt die verfügbaren Computerressourcen effizient.

  3. Früheres Feedback — Schnellerer Testabschluss bedeutet schnelleres Feedback an die Entwickler.

  4. Cost-effective- Spart auf lange Sicht sowohl Zeit als auch Rechenkosten.

Bei der Implementierung einer parallelen Testausführung werden häufig zwei Hauptansätze in Betracht gezogen: separate Umgebungen und Multithreading. Beide Methoden zielen zwar auf eine gleichzeitige Testausführung ab, unterscheiden sich jedoch erheblich in ihrer Implementierung und Effektivität. Separate Umgebungen erzeugen isolierte Instanzen, in denen jede Testsuite unabhängig ausgeführt wird, während Multithreading mehrere Tests gleichzeitig innerhalb desselben Prozessraums unter Verwendung verschiedener Threads ausführt.

Zu den wichtigsten Vorteilen separater Umgebungen gegenüber Multithreading gehören:

  1. Isolierung — Jeder Test wird in einer vollständig isolierten Umgebung ausgeführt, wodurch Interferenzen zwischen den Tests vermieden werden.

  2. Ressourcenkonflikte — Keine Konkurrenz um gemeinsam genutzte Ressourcen, wie sie beim Multithreading häufig auftritt.

  3. Stabilität — Weniger anfällig für Rennbedingungen und Synchronisationsprobleme.

  4. Einfacheres Debugging — Wenn Tests fehlschlagen, ist es einfacher, die Ursache zu identifizieren, da jede Umgebung unabhängig ist.

  5. Statusverwaltung — Problemstellungen, bei denen Multithread-Tests häufig auftreten, lassen sich mühelos verwalten.

  6. Bessere Skalierbarkeit — Es können problemlos weitere Umgebungen ohne Komplexität hinzugefügt werden.

Unterstützung in AWS CodeBuild

AWS CodeBuild bietet robuste Unterstützung für die parallele Testausführung durch die Batch-Build-Funktion, die speziell für die Nutzung separater Umgebungsausführungen entwickelt wurde. Diese Implementierung passt perfekt zu den Vorteilen isolierter Testumgebungen.

Batch-Erstellung mit Testverteilung

CodeBuildDie Batch-Build-Funktionalität ermöglicht die Erstellung mehrerer Build-Umgebungen, die gleichzeitig ausgeführt werden. Jede Umgebung arbeitet als vollständig isolierte Einheit mit eigenen Rechenressourcen, Laufzeitumgebung und Abhängigkeiten. Mithilfe der Batch-Build-Konfiguration können Sie angeben, wie viele parallele Umgebungen sie benötigen und wie die Tests auf sie verteilt werden sollen.

Testen Sie das Sharding (CLI)

CodeBuild beinhaltet über das CLI-Tool einen integrierten Testverteilungsmechanismuscodebuild-tests-run, der Tests automatisch in verschiedene Umgebungen aufteilt.

Aggregation von Berichten

Eine der wichtigsten Stärken der Implementierung CodeBuild ist die Fähigkeit, die Aggregation von Testergebnissen nahtlos zu handhaben. Tests werden zwar in separaten Umgebungen ausgeführt, sammelt und kombiniert jedoch CodeBuild automatisch die Testberichte aus jeder Umgebung zu einem einheitlichen Testbericht auf Batch-Build-Ebene. Diese Konsolidierung bietet einen umfassenden Überblick über die Testergebnisse und behält gleichzeitig die Effizienzvorteile der parallelen Ausführung bei.

Das folgende Diagramm erklärt das vollständige Konzept der parallelen Testausführung in AWS CodeBuild.

Konzeptdiagramm der parallelen Testausführung.