Wählen Sie Ihre Cookie-Einstellungen aus

Wir verwenden essentielle Cookies und ähnliche Tools, die für die Bereitstellung unserer Website und Services erforderlich sind. Wir verwenden Performance-Cookies, um anonyme Statistiken zu sammeln, damit wir verstehen können, wie Kunden unsere Website nutzen, und Verbesserungen vornehmen können. Essentielle Cookies können nicht deaktiviert werden, aber Sie können auf „Anpassen“ oder „Ablehnen“ klicken, um Performance-Cookies abzulehnen.

Wenn Sie damit einverstanden sind, verwenden AWS und zugelassene Drittanbieter auch Cookies, um nützliche Features der Website bereitzustellen, Ihre Präferenzen zu speichern und relevante Inhalte, einschließlich relevanter Werbung, anzuzeigen. Um alle nicht notwendigen Cookies zu akzeptieren oder abzulehnen, klicken Sie auf „Akzeptieren“ oder „Ablehnen“. Um detailliertere Entscheidungen zu treffen, klicken Sie auf „Anpassen“.

Benutze den IDT Kontext - Kostenlos RTOS

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.

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.

Benutze den IDT Kontext

Wenn eine Testsuite IDT ausgeführt wird, kann die Testsuite auf einen Datensatz zugreifen, anhand dessen bestimmt werden kann, wie die einzelnen Tests ausgeführt werden. Diese Daten werden als IDT Kontext bezeichnet. Beispielsweise wird die Benutzerdatenkonfiguration, die von Testläufern in einer userdata.json Datei bereitgestellt wird, Testsuiten im IDT Kontext zur Verfügung gestellt.

Der IDT Kontext kann als schreibgeschütztes Dokument JSON betrachtet werden. Testsuiten können mithilfe von Standarddatentypen wie Objekten, Arrays, Zahlen usw. JSON Daten aus dem Kontext abrufen und Daten in den Kontext schreiben.

Kontextschema

Der IDT Kontext verwendet das folgende Format:

{ "config": { <config-json-content> "timeoutMultiplier": timeout-multiplier, "idtRootPath": <path/to/IDT/root> }, "device": { <device-json-device-element> }, "devicePool": { <device-json-pool-element> }, "resource": { "devices": [ { <resource-json-device-element> "name": "<resource-name>" } ] }, "testData": { "awsCredentials": { "awsAccessKeyId": "<access-key-id>", "awsSecretAccessKey": "<secret-access-key>", "awsSessionToken": "<session-token>" }, "logFilePath": "/path/to/log/file" }, "userData": { <userdata-json-content> } }
config

Informationen aus der config.jsonDatei. Das config Feld enthält außerdem die folgenden zusätzlichen Felder:

config.timeoutMultiplier

Der Multiplikator für jeden Timeout-Wert, der von der Testsuite verwendet wird. Dieser Wert wird vom Testläufer aus dem angegeben. IDT CLI Der Standardwert ist 1.

config.idRootPath

Dieser Wert ist ein Platzhalter für den absoluten Pfadwert von IDT bei der Konfiguration der userdata.json Datei. Dies wird von den Befehlen Build und Flash verwendet.

device

Informationen über das Gerät, das für den Testlauf ausgewählt wurde. Diese Information entspricht dem devices Array-Element in der device.jsonDatei für das ausgewählte Gerät.

devicePool

Informationen über den Gerätepool, der für den Testlauf ausgewählt wurde. Diese Informationen entsprechen dem Element des Gerätepool-Arrays der obersten Ebene, das in der device.json Datei für den ausgewählten Gerätepool definiert ist.

resource

Informationen zu Ressourcengeräten aus der resource.json Datei.

resource.devices

Diese Informationen entsprechen dem in der resource.json Datei definierten devices Array. Jedes devices Element enthält das folgende zusätzliche Feld:

resource.device.name

Der Name des Ressourcengeräts. Dieser Wert ist auf den requiredResource.name Wert in der test.json Datei festgelegt.

testData.awsCredentials

Die AWS Anmeldeinformationen, die vom Test für die Verbindung mit der AWS Cloud verwendet wurden. Diese Informationen werden aus der config.json Datei abgerufen.

testData.logFilePath

Der Pfad zur Protokolldatei, in die der Testfall Protokollnachrichten schreibt. Die Testsuite erstellt diese Datei, falls sie nicht existiert.

userData

Informationen, die vom Testrunner in der userdata.jsonDatei bereitgestellt wurden.

Greifen Sie auf Daten im Kontext zu

Sie können den Kontext anhand der JSONPath Notation aus Ihren Konfigurationsdateien und aus Ihrer ausführbaren Textdatei mit dem GetContextValue und abfragen GetContextStringAPIs. Die Syntax für JSONPath Zeichenketten für den Zugriff auf den IDT Kontext variiert wie folgt:

  • In suite.json test.json und verwenden Sie{{query}}. Das heißt, verwenden Sie nicht das Stammelement$., um Ihren Ausdruck zu starten.

  • Instatemachine.json, du benutzt{{$.query}}.

  • In API Befehlen verwenden Sie je nach Befehl query oder{{$.query}}. Weitere Informationen finden Sie in der Inline-Dokumentation imSDKs.

In der folgenden Tabelle werden die Operatoren in einem typischen JSONPath Foobar-Ausdruck beschrieben:

Operator Beschreibung
$ Das Stammelement. Da es sich bei dem Kontextwert der obersten Ebene für um ein Objekt IDT handelt, verwenden Sie ihn normalerweise, um Ihre $. Abfragen zu starten.
.childName Greift auf das untergeordnete Element mit dem Namen eines childName Objekts zu. Wenn es auf ein Array angewendet wird, ergibt dies ein neues Array, bei dem dieser Operator auf jedes Element angewendet wird. Beim Elementnamen wird zwischen Groß- und Kleinschreibung unterschieden. Die Abfrage für den Zugriff auf den awsRegion Wert im config Objekt lautet beispielsweise$.config.awsRegion.
[start:end] Filtert Elemente aus einem Array und ruft Elemente ab, die mit dem start Index beginnen und bis zum end Index aufsteigen, jeweils inklusive.
[index1, index2, ... , indexN] Filtert Elemente aus einem Array und ruft nur Elemente aus den angegebenen Indizes ab.
[?(expr)] Filtert Elemente aus einem Array mithilfe des expr Ausdrucks. Dieser Ausdruck muss einen booleschen Wert ergeben.

Verwenden Sie die folgende Syntax, um Filterausdrücke zu erstellen:

<jsonpath> | <value> operator <jsonpath> | <value>

In dieser Syntax gilt:

  • jsonpathist einJSONPath, das die JSON Standardsyntax verwendet.

  • valueist ein beliebiger benutzerdefinierter Wert, der die JSON Standardsyntax verwendet.

  • operatorist einer der folgenden Operatoren:

    • <(Weniger als)

    • <=(Weniger als oder gleich)

    • ==(Gleich)

      Wenn der Wert JSONPath oder in Ihrem Ausdruck ein Array, ein boolescher Wert oder ein Objektwert ist, dann ist dies der einzige unterstützte binäre Operator, den Sie verwenden können.

    • >=(Größer als oder gleich)

    • >(Größer als)

    • =~(Übereinstimmung mit regulären Ausdrücken). Um diesen Operator in einem Filterausdruck zu verwenden, muss der Wert JSONPath oder auf der linken Seite des Ausdrucks eine Zeichenfolge ergeben, und auf der rechten Seite muss es sich um einen Musterwert handeln, der der RE2Syntax folgt.

Sie können JSONPath Abfragen in der Form {{verwendenquery}} als Platzhalterzeichenfolgen innerhalb der environmentVariables Felder args und in test.json Dateien und innerhalb der environmentVariables Felder in suite.json Dateien. IDTführt eine Kontextsuche durch und füllt die Felder mit dem ausgewerteten Wert der Abfrage. In der suite.json Datei können Sie beispielsweise Platzhalterzeichenfolgen verwenden, um Umgebungsvariablenwerte anzugeben, die sich mit jedem Testfall ändern, und IDT die Umgebungsvariablen mit dem richtigen Wert für jeden Testfall auffüllen. Wenn Sie jedoch Platzhalterzeichenfolgen in test.json und suite.json -Dateien verwenden, gelten für Ihre Abfragen die folgenden Überlegungen:

  • Sie müssen jedes Vorkommen des devicePool Schlüssels in Ihrer Abfrage in Kleinbuchstaben angeben. Das heißt, verwenden Sie devicepool stattdessen.

  • Für Arrays können Sie nur Zeichenketten-Arrays verwenden. Darüber hinaus verwenden Arrays ein nicht standardmäßiges Format. item1, item2,...,itemN Wenn das Array nur ein Element enthält, wird es als serialisiertitem, sodass es nicht von einem Zeichenkettenfeld zu unterscheiden ist.

  • Sie können keine Platzhalter verwenden, um Objekte aus dem Kontext abzurufen.

Aus diesen Gründen empfehlen wir, wann immer möglich, für den API Zugriff auf den Kontext in Ihrer Testlogik die anstelle von Platzhalterzeichenfolgen in test.json und suite.json -Dateien zu verwenden. In einigen Fällen kann es jedoch praktischer sein, JSONPath Platzhalter zu verwenden, um einzelne Zeichenketten abzurufen und sie als Umgebungsvariablen festzulegen.

DatenschutzNutzungsbedingungen für die WebsiteCookie-Einstellungen
© 2025, Amazon Web Services, Inc. oder Tochtergesellschaften. Alle Rechte vorbehalten.