ExecutableConditionAttribute Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Dieses Attribut wird verwendet, um bedingt zu steuern, ob eine Testklasse oder eine Testmethode ausgeführt oder ignoriert wird, je nachdem, ob eine bestimmte ausführbare Datei (Tool) verfügbar ist.
[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true, Inherited=false)]
public sealed class ExecutableConditionAttribute : Microsoft.VisualStudio.TestTools.UnitTesting.ConditionBaseAttribute
[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true, Inherited=false)]
[System.Runtime.CompilerServices.Nullable(0)]
public sealed class ExecutableConditionAttribute : Microsoft.VisualStudio.TestTools.UnitTesting.ConditionBaseAttribute
[<System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true, Inherited=false)>]
type ExecutableConditionAttribute = class
inherit ConditionBaseAttribute
[<System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true, Inherited=false)>]
[<System.Runtime.CompilerServices.Nullable(0)>]
type ExecutableConditionAttribute = class
inherit ConditionBaseAttribute
Public NotInheritable Class ExecutableConditionAttribute
Inherits ConditionBaseAttribute
- Vererbung
- Attribute
Hinweise
Dies ist eine generische, toolagnostische Bedingung. Es gibt zwei Modi:
- Wenn kein Arguments Wert angegeben wird, überprüft die Bedingung nur, ob die ausführbare Datei im System
PATHerkannt werden kann (und auf Windows, durchlösbarPATHEXT). Die ausführbare Datei wird nicht ausgeführt. Beispielsweise kann überprüft werden, obdockerdie Installation erfolgt. - Wenn Arguments die Bedingung angegeben wird, wird die Bedingung ausgeführt
executable argumentsund wird nur erfüllt, wenn der Prozess mit Code0innerhalb TimeoutSecondsbeendet wird. Überprüft beispielsweise,[ExecutableCondition("docker", "version")]ob die Docker CLI tatsächlich reagiert. Die Prozessausgabe wird umgeleitet und verworfen, und der Prozess (zusammen mit seiner untergeordneten Prozessstruktur, in der die Laufzeit sie unterstützt) wird beendet, wenn es das Timeout überschreitet.
Produktspezifischer Zustand (z. B. ob der Docker-Daemon für Linux-Container konfiguriert ist) ist absichtlich außerhalb des Gültigkeitsbereichs. über dieses Attribut verfügen, oder erstellen Sie eigene ConditionBaseAttributeÜberprüfungen.
Jede unterschiedliche Kombination aus ausführbaren Und-Argumenten bildet eine eigene Bedingungsgruppe (siehe GroupName). Daher muss das Anwenden des Attributs mehrmals mit verschiedenen Befehlen erfüllt sein (logisches UND), während das Anwenden mehrmals mit demselben Befehl nur eine Übereinstimmung erfordert (logischeS ODER).
Dieses Attribut wird nicht geerbt. Das Anwenden auf eine Basisklasse wirkt sich nicht auf abgeleitete Klassen aus.
Konstruktoren
| Name | Beschreibung |
|---|---|
| ExecutableConditionAttribute(ConditionMode, String, String[]) |
Initialisiert eine neue Instanz der ExecutableConditionAttribute-Klasse. |
| ExecutableConditionAttribute(ConditionMode, String) |
Initialisiert eine neue Instanz der ExecutableConditionAttribute Klasse, die überprüft, ob die angegebene ausführbare Datei verfügbar |
| ExecutableConditionAttribute(String, String[]) |
Initialisiert eine neue Instanz der ExecutableConditionAttribute Klasse, die den Test nur enthält, wenn der angegebene Befehl verfügbar ist. |
| ExecutableConditionAttribute(String) |
Initialisiert eine neue Instanz der ExecutableConditionAttribute Klasse, die den Test nur enthält, wenn die angegebene ausführbare Datei verfügbar |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Arguments |
Ruft die Argumente ab, die an die ausführbare Datei übergeben werden. Wenn sie leer ist, wird nur das Vorhandensein der ausführbaren Datei |
| Executable |
Ruft die ausführbare Datei ab, nach der diese Bedingung sucht. |
| GroupName |
Ruft den Gruppennamen für dieses Attribut ab. Jeder Befehl - kombiniert mit Mode -- bildet eine eigene Gruppe, sodass mehrere unterschiedliche Befehle mit einem logischen UND kombiniert werden, während derselbe Befehl mit gegenüberliegenden Modi nicht im Hintergrund abbricht (Spiegelung MemberConditionAttribute). |
| IgnoreMessage |
Dient zum Abrufen oder Festlegen der Ignorieren-Nachricht, die den Grund für die Ignorieren der Testmethode oder der Testklasse angibt. (Geerbt von ConditionBaseAttribute) |
| IsConditionMet |
Ruft einen Wert ab, der angibt, ob die Bedingung erfüllt ist. Die Implementierung dieser Eigenschaft sollte die Mode Eigenschaft nicht lesen. |
| Mode |
Ruft den Bedingungsmodus ab. (Geerbt von ConditionBaseAttribute) |
| TimeoutSeconds |
Ruft die maximale Anzahl von Sekunden ab, bis die ausführbare Datei beendet wird, wenn Arguments angegeben wird, oder legt diese fest. Ein Wert kleiner oder gleich 0 bedeutet kein Timeout. Der Standardwert ist 30 Sekunden. |