Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Verwendet containerstrukturtest (https://github.com/GoogleContainerTools/container-structure-test) zum Überprüfen der Struktur eines Images basierend auf vier Testkategorien – Befehlstests, Dateiexistenztests, Dateiinhaltstests und Metadatentests.
Syntax
# Container Structure Test v0
# Uses container-structure-test (https://github.com/GoogleContainerTools/container-structure-test) to validate the structure of an image based on four categories of tests - command tests, file existence tests, file content tests and metadata tests.
- task: ContainerStructureTest@0
inputs:
# Container Repository
dockerRegistryServiceConnection: # string. Required. Docker registry service connection.
repository: # string. Required. Container repository.
#tag: '$(Build.BuildId)' # string. Tag. Default: $(Build.BuildId).
configFile: # string. Required. Config file path.
#testRunTitle: # string. Test run title.
#failTaskOnFailedTests: false # boolean. Fail task if there are test failures. Default: false.
Eingänge
dockerRegistryServiceConnection
-
Docker-Registrierungsdienstverbindung
string. Erforderlich.
Geben Sie eine Docker-Registrierungsdienstverbindung an. Erforderlich für Befehle, die sich bei einer Registrierung authentifizieren müssen.
repository
-
Container-Repository
string. Erforderlich.
Der Name des Repositorys.
tag
-
Tag-
string. Standardwert: $(Build.BuildId).
Das Tag wird verwendet, um das Image aus der Docker-Registrierungsdienstverbindung abzurufen.
configFile
-
Konfigurationsdateipfad
string. Erforderlich.
Der Konfigurationsdateipfad, der Containerstrukturtests enthält, entweder in YAML- oder .json Dateiformaten.
testRunTitle
-
Titel der Testausführung
string.
Geben Sie einen Namen für die Testausführung an.
failTaskOnFailedTests
-
Fehleraufgabe, wenn testfehler
boolean. Standardwert: false.
Schlägt die Aufgabe fehl, wenn Testfehler auftreten. Aktivieren Sie diese Option, um die Aufgabe fehlzuschlagen, wenn Testfehler erkannt werden.
Aufgabensteuerungsoptionen
Alle Aufgaben verfügen zusätzlich zu ihren Aufgabeneingaben über Steuerungsoptionen. Weitere Informationen finden Sie unter Steuerelementoptionen und allgemeinen Aufgabeneigenschaften.
Ausgabevariablen
Keiner.
Bemerkungen
Diese Aufgabe hilft Ihnen beim Ausführen von Containerstrukturtests und beim Veröffentlichen von Testergebnissen in Azure Pipelines und bietet eine umfassende Testberichterstattung und Analyseerfahrung.
Hinweis
Dies ist ein Frühvorschaufeature. Weitere bevorstehende Features werden in bevorstehenden Sprints eingeführt.
Die Containerstrukturtests bieten ein leistungsfähiges Framework zum Überprüfen der Struktur eines Containerimages. Diese Tests können verwendet werden, um die Ausgabe von Befehlen in einem Bild zu überprüfen sowie Metadaten und Inhalte des Dateisystems zu überprüfen. Tests können entweder über eine eigenständige Binärdatei oder über ein Docker-Image ausgeführt werden.
Tests innerhalb dieses Frameworks werden über eine YAML- oder JSON-Konfigurationsdatei angegeben. Mehrere Konfigurationsdateien können in einer einzigen Testausführung angegeben werden. Die Konfigurationsdatei wird vom Testläufer geladen, der die Tests in der Reihenfolge ausführt. In dieser Konfigurationsdatei können vier Arten von Tests geschrieben werden:
- Befehlstests (Ausgabe/Fehler eines bestimmten ausgegebenen Befehls)
- Dateiexistenztests (sicherstellen, dass eine Datei im Dateisystem des Bilds vorhanden ist oder nicht vorhanden ist)
- Dateiinhaltstests (sicherstellen, dass Dateien im Dateisystem des Bilds bestimmte Inhalte enthalten oder nicht enthalten)
- Metadatentest, Singular (sicherstellen, dass bestimmte Containermetadaten korrekt sind)
Build-, Test- und Veröffentlichungstest
Der Containerstrukturtestvorgang kann sowohl in der klassischen Pipeline als auch in einheitlichen Pipelines (mehrstufigen) & YAML-basierten Pipelines hinzugefügt werden.
In der neuen einheitlichen YAML-Pipeline können Sie im Fenster nach Aufgaben suchen.
Nachdem die Aufgabe hinzugefügt wurde, müssen Sie bei Bedarf den Konfigurationsdateipfad, die Docker registory-Dienstverbindung, das Container-Repository und das Tag festlegen. Die Aufgabeneingabe in der yaml-basierten Pipeline wird erstellt.
YAML-Datei
steps:
- task: ContainerStructureTest@0
displayName: 'Container Structure Test '
inputs:
dockerRegistryServiceConnection: 'Container_dockerHub'
repository: adma/hellodocker
tag: v1
configFile: /home/user/cstfiles/fileexisttest.yaml
Testbericht anzeigen
Nachdem die Aufgabe ausgeführt wurde, können Sie direkt zur Registerkarte "Test" wechseln, um den vollständigen Bericht anzuzeigen. Die veröffentlichten Testergebnisse werden auf der Registerkarte Tests in der Pipelinezusammenfassung angezeigt und helfen Ihnen, die Pipelinequalität zu messen, die Rückverfolgbarkeit zu überprüfen, Fehler zu beheben und den Besitz von Laufwerksfehlern zu beheben.
Anforderungen
| Anforderung | BESCHREIBUNG |
|---|---|
| Pipelinetypen | YAML, Classic Build, Classic Release |
| Läuft auf | Agent, DeploymentGroup |
| Anforderungen | Nichts |
| Funktionen | Dieser Vorgang erfüllt keine Anforderungen für nachfolgende Vorgänge im Auftrag. |
| Befehlseinschränkungen | Jegliche |
| Settable-Variablen | Jegliche |
| Agentversion | 2.144.0 oder höher |
| Vorgangskategorie | Testen |
| Anforderung | BESCHREIBUNG |
|---|---|
| Pipelinetypen | YAML, Classic Build, Classic Release |
| Läuft auf | Agent, DeploymentGroup |
| Anforderungen | Nichts |
| Funktionen | Dieser Vorgang erfüllt keine Anforderungen für nachfolgende Vorgänge im Auftrag. |
| Befehlseinschränkungen | Jegliche |
| Settable-Variablen | Jegliche |
| Agentversion | 2.0.0 oder höher |
| Vorgangskategorie | Testen |