Hardware Labor Kit (HLK) für Near Field Communication (NFC)
Das HLK für NFC überprüft, ob die NFC-Treiberimplementierung die Microsoft-Spezifikationen erfüllt. Obwohl die Tests manuell ausgeführt werden können, empfehlen wir Partnern, das NFC-Interoperabilitätstesttool (NITT) zu erwerben, um die Tests für die HLK-NFC-Testsuite automatisiert, schneller und zuverlässiger auszuführen.
Das NITT simuliert NFC-Forumtags des Typs 1, 2, 3 und 4. Das NITT verfügt über einen Roboterarm, der ein RF-Shield bewegt und damit Tippvorgänge/Kontaktaufhebungen für Peer-to-Peer- und Kartenemulationsszenarien simuliert. Die folgende Abbildung veranschaulicht den Aufbau des NITT.
Das NITT wird über ein externes 7,5-V-Netzteil mit Strom versorgt und ist mit dem Client-PC verbunden.
Um das NITT zu erwerben, verwenden Sie die folgenden Kontaktinformationen:
JJG Technologies LLC
1034 231st Pl NE
Sammamish, WA 98074
Phone: (206) 304-1921 Fax: (208) 298-0623
inquiry@jjgtechnologies.com
Nach dem Einrichten des HLK-Testframeworks:
Hardwareanforderungen
- Gerät mit NFC-Chip, das die NFC-Treiber-DDIs implementiert und Compliancetests unterzogen wird – wird als „Device Under Test“ (DUT) bezeichnet
- Desktop-PC mit USB-Anschluss (PC-Client)
- NITT-Board (falls verfügbar), verbunden mit dem PC-Client
- Gerät mit NFC-Chip, das die Near Field Proximity-DDIs implementiert (NFC-Client)
- Smartcardleser, der mit dem PC-Client verbunden ist (entweder über USB oder eingebettet in den PC-Client)
Hinweis
Der PC-Client erfordert die Installation der Universal C Runtime. Dieses Paket ist direkt im Microsoft Download Center verfügbar.
Testausführung
Vor Ausführung des Tests
- Stellen Sie sicher, dass der HLK-Client für das DUT bereitgestellt ist.
- Platzieren Sie das DUT oberhalb der NFC-Antenne auf der NITT-Platine.
- Platzieren Sie NFC-Client oder Smartcardleser – je nachdem, welcher Test ausgeführt wird – unterhalb von NFC-Antenne und RF-Shield des NITT.
- Stellen Sie sicher, dass auf dem PC-Client die Universal C Runtime installiert ist.
- Stellen Sie sicher, dass DUT, NFC-Client und PC-Client über Netzwerkverbindungen verfügen. Wenn das DUT oder der NFC-Client ein Smartphone ist, benötigen Sie das Virtual Ethernet-Tool, um eine Verbindung mit dem Telefon herzustellen.
HLK Studio bzw. der HLK-Controller stellt Testfälle auf dem DUT bereit und führt diese aus, es sind aber einige Eingriffe seitens des Testers erforderlich. Bei Testfällen, in denen manuelle Eingriffe erforderlich sind, müssen die Binärdateien für Hilfsprogramme manuell gestartet werden. Dazu muss auf dem NFC-Client und dem PC-Client Folgendes eingerichtet werden:
NFC-Client
Erstellen Sie einen Arbeitsordner, und kopieren Sie die TAEF-Binärdateien, die der Clientarchitektur entsprechen, vom HLK-Controller in das Arbeitsverzeichnis. In einem typischen HLK Studio-Setup befinden sich die TAEF-Binärdateien im folgenden Verzeichnis:
C:\Program Files (x86)\Windows Kits\10\Testing\Runtimes\TAEF\<arch>\*\MinTE\*
Dabei ist <arch> x86, x64, arm oder arm64.
Kopieren Sie die Datei NfcRemotePeerService.dll aus dem folgenden HLK Studio-Speicherort in das oben erstellte Arbeitsverzeichnis:
C:\Program Files (x86)\Windows Kits\10\Hardware Lab Kit\Tests\<arch>\NFC\NfcRemotePeerService.dll
Dabei ist <arch> x86, amd64, arm oder arm64.
PC-Client (*Setup bei Verwendung von NITT)
Erstellen Sie einen Arbeitsordner, und kopieren Sie die TAEF-Binärdateien, die der Clientarchitektur entsprechen, vom HLK-Controller in das Arbeitsverzeichnis. In einem typischen HLK Studio-Setup befinden sich die TAEF-Binärdateien im folgenden Verzeichnis:
C:\Program Files (x86)\Windows Kits\10\Testing\Runtimes\TAEF\<arch>\*\MinTE\*
Dabei ist <arch> x86, x64, arm oder arm64.
Kopieren Sie die Datei NfcNittController.exe aus dem folgenden HLK Studio-Speicherort in das oben erstellte Arbeitsverzeichnis:
C:\Program Files (x86)\Windows Kits\10\Hardware Lab Kit\Tests\<arch>\NFC\NfcNittController.exe
Dabei ist <arch> x86, amd64, arm oder arm64.
Kopieren Sie die Datei MuttUtil.dll aus dem folgenden HLK Studio-Speicherort in das oben erstellte Arbeitsverzeichnis:
C:\Program Files (x86)\Windows Kits\10\Hardware Lab Kit\Tests\<arch>\usb\MuttTools\MuttUtil.dll
Dabei ist <arch> x86, amd64, arm oder arm64.
PC-Client (*Setup ohne Verwendung von NITT)
Erstellen Sie einen Arbeitsordner, und kopieren Sie die NfcManualHelper.exe-Datei, die der Clientarchitektur entspricht, vom HLK-Controller in das Arbeitsverzeichnis. In einem typisches HLK Studio-Setup befindet sich NfcManualHelper.exe im folgenden Verzeichnis:
C:\Program Files (x86)\Windows Kits\10\Hardware Lab Kit\Tests\<arch>\NFC\NfcManualHelper.exe
Dabei ist <arch> x86, x64, arm oder arm64.
Ausführen des Tests mit dem HLK
HLK Studio
Wählen Sie in HLK Studio auf der Registerkarte „Tests“ den Test gemäß folgender Abbildung aus:
Klicken Sie auf Ausgewählte ausführen.
Wenn Sie die Tests manuell (ohne NITT) ausführen, ändern Sie den Parameterwert von nitt zu manual, wie in der folgenden Abbildung gezeigt:
Testen mit NFC-Client
Öffnen Sie eine Eingabeaufforderung, und wechseln Sie zum oben erstellten Arbeitsordner.
Führen Sie den folgenden Befehl aus:
TE.exe NfcRemotePeerService.dll /p:server=<ip_of_dut>
Dabei ist <ip_of_dut> die IP-Adresse des DUT.
NfcRemotePeerService.dll stellt eine Verbindung mit dem Test her, der auf dem DUT ausgeführt wird, und empfängt Befehle aus dem Test. Diese Befehle weisen NfcRemotePeerService.dll an, wann Near Field Proximity-Veröffentlichungen und -Abonnements auf dem NFC-Client erstellt werden sollen. Wird auf dem DUT und dem NFC-Client gleichzeitig ein Tippvorgang ausgeführt, werden die Veröffentlichungen und Abonnements ausgelöst und führen NFC-Peer-to-Peer-Szenarien aus.
Testen mit PC-Client (*Setup mit Verwendung von NITT)
Öffnen Sie eine Eingabeaufforderung, und wechseln Sie zum oben erstellten Arbeitsordner.
Führen Sie den folgenden Befehl aus:
nfcnittcontroller.exe -server <ip_of_dut> -tagIndex <tag_index> -reader <reader_name>
Dabei ist <ip_of_dut> die IP-Adresse des DUT, <tag_index> der Index der NITT-Platinenkennzeichnung und <reader_name> der Name des mit dem PC-Client verbundenen Smartcardlesers. Mögliche Werte für <tag_index> sind 1, 2, 3 und 4, entsprechend den NFC-forumskompatiblen Kennzeichnungen T1T, T2T, T3T bzw. T4T. Um den Namen des Smartcardlesers zu finden, der mit dem PC-Client verbunden ist, können Sie die Option -listReaders von NfcManualHelper.exe verwenden (siehe unten).
NfcNittController.dll stellt eine Verbindung mit dem Test her, der auf dem DUT ausgeführt wird, und empfängt Befehle aus dem Test. Diese Befehle weisen NfcNittController.exe an, wann Aktionen mit dem NITT ausgeführt werden sollen. Diese Aktionen werden automatisch ausgeführt und erfordern keine manuelle Interaktion. Beispielaktionen: Öffnen und Schließen des RF-Shields, Aktivieren und Deaktivieren einer Kennzeichnung im NITT.
PC-Clienttest (*Setup ohne Verwendung von NITT)
Öffnen Sie eine Eingabeaufforderung, und wechseln Sie zum oben erstellten Arbeitsordner.
Führen Sie den folgenden Befehl aus:
nfcmanualhelper.exe -server <ip_of_dut> -reader <reader_name>
Dabei ist <ip_of_dut> die IP-Adresse des DUT und <reader_name> der Name des mit dem PC-Client verbundenen Smartcardlesers. Um den Namen des Smartcardlesers zu finden, der mit dem PC-Client verbunden ist, können Sie den folgenden Befehl ausführen:
nfcmanualhelper.exe -listReaders
NfcManualHelper.exe stellt eine Verbindung mit dem auf dem DUT ausgeführten Test her und gibt Anweisungen dazu aus, was während der Testausführung zu tun ist. Beispielanweisungen: Tippen auf den NFC-Client auf dem DUT, Tippen auf den Smartcardleser auf dem DUT, Tippen auf die Near Field Proximity-Kennzeichnung auf dem DUT.