Clientszenarien für WSDBIT
Alle Testszenarien werden aus der Perspektive des Clients gesteuert. In begrenzten Fällen ist für den Abschluss des Szenarios eine Geräteinteraktion erforderlich. Diese Anforderung wird in den jeweiligen Szenarien angegeben.
Sofern nicht anders angegeben, wird davon ausgegangen, dass das Testgerät (TestDevice) bereits gestartet und in dem Netzwerksegment verfügbar ist, in dem die Szenarien ausgeführt werden.
Einige Szenarien definieren die Interaktion zwischen dem Client und einem (oder mehreren) der gehosteten Dienste im TestDevice.
Clients können die gehosteten Dienstendpunkte auf zwei Arten abrufen.
Die gehosteten Dienstendpunkte können vom Benutzer bereitgestellt werden. Diese Situation impliziert, dass nach dem Starten des TestDevice die Endpunkte bekannt sind und der Partei bekannt gemacht werden können, die den Client ausführt.
Die gehosteten Dienstendpunkte können dynamisch ermittelt werden. Diese Situation impliziert, dass das TestDevice ermittelt wird. Die Ermittlung des TestDevice kann über Folgendes erfolgen:
- Ein Hello (von dem angenommen wird, dass es vom Gerät initiiert wird und dass ein XAddrs-Feld vorhanden ist).
- Ein Test\Resolve-Austausch.
- Eine Resolve-Nachricht (die davon ausgeht, dass die urn:uuid-Adresse des Geräteendpunkts bekannt ist).
Anschließend können Metadaten angefordert werden, und die anschließende Überprüfung der HostedService-Metadaten zeigt die Endpunkte.
Clients können eine dieser Methoden unterstützen, aber das TestDevice muss beide Möglichkeiten unterstützen, um gehostete Dienstendpunkte abzurufen.
Clients müssen in der Lage sein, die vom TestDevice empfangene Anlage zu überprüfen. Die Anlage sollte überprüft werden, indem eine Kopie der erwarteten Anlage in den Arbeitsspeicher geladen und ein Byte-for-Byte-Speichervergleich für die empfangene Anlage durchgeführt wird.
Wenn Clients Verlängerungen für Ereignisse senden, können sie die Verlängerung manuell initiieren oder die Verlängerung automatisch senden, wenn die Hälfte des Verlängerungszeitraums, der in der ursprünglichen SubscribeResponse-Nachricht angegeben ist, abgelaufen ist.
Hinweis Da Testfälle möglicherweise von den Ergebnissen früherer Testfälle abhängig sind, sollten die Testfälle in der richtigen Reihenfolge ausgeführt werden. (Beispielsweise hängt 1.3.8 vom Ergebnis von 1.2.1 ab.) Es gibt keine Abhängigkeiten zwischen Testszenarien (z. B. zwischen dem Ereignis- und Anlageszenario). Es gibt eine implizite Abhängigkeit für alle erweiterten Szenarien im ersten Szenario (Geräte- und Dienstüberprüfung), da das Nichterfinden des TestDevice und die Überprüfung der gehosteten Dienste verhindert, dass das jeweilige erweiterte Szenario ausgeführt wird.
Dieser Abschnitt schließt folgende Themen ein: