近距離無線通信 (NFC) 用 Hardware Lab Kit (HLK)
NFC の HLK では、NFC ドライバーの実装が Microsoft の仕様を満たしていることを検証します。 テストは手動で実行できますが、HLK NFC テスト スイートの信頼性の高いテストを自動化し、より迅速に行うために、パートナーは NFC 相互運用性テスト ツール (NITT) を入手することをお勧めします。
NITT は、Type 1、2、3、4 の NFC フォーラム タグをシミュレートします。 NITT には、RF シールドを動かすロボット アームがあります。これは、ピア ツー ピアとカード エミュレーションのシナリオでタップとタップ解除の操作をシミュレートします。 次の図は、NITT のセットアップを示しています。
NITT の電源は 7.5 V の外部電源を使用し、クライアント PC に接続されています。
NITT を入手するには、次の連絡先情報を使用します。
JJG Technologies LLC
1034 231st Pl NE
Sammamish, WA 98074
Phone: (206) 304-1921 Fax: (208) 298-0623
inquiry@jjgtechnologies.com
HLK テスト フレームワークを設定したら、次のようにします。
ハードウェア要件
- NFC ドライバー DDI を実装する NFC チップが搭載されていて、準拠テストの対象となっているデバイス (テスト対象のデバイス (DUT) と呼ばれます)
- USB ポートを使用するデスクトップ PC (PC クライアント)
- PC クライアントに接続されている NITT ボード (使用可能な場合)
- 近距離近接通信の DDI (NFC クライアント) を実装する NFC チップを搭載したデバイス
- PC クライアントに接続されているスマート カード リーダー (USB で、または PC クライアントに組み込まれている)
Note
PC クライアントには、ユニバーサル C ランタイムがインストールされている必要があります。 このパッケージは、Microsoft ダウンロード センターから直接入手できます。
テストの実行
テストを実行する前に
- HLK クライアント が DUT にデプロイされていることを確認します。
- NITT ボードの NFC アンテナの上に DUT を配置します。
- 実行するテストに応じて、NFC アンテナと NITT の RF シールドの下に、NFC クライアントまたはスマート カード リーダーを配置します。
- PC クライアントにユニバーサル C ランタイムがインストールされていることを確認します。
- DUT、NFC クライアント、および PC クライアントにネットワーク接続があることを確認します。 DUT または NFC クライアントが電話である場合は、仮想イーサネット ツールが電話に接続できる必要があります。
HLK Studio/コントローラーは、DUT でテスト ケースをデプロイして実行しますが、テスト担当者が一部の介入する必要があります。 手動介入が必要なテスト ケースでは、ヘルパー バイナリを手動で起動する必要があります。 そのためには、NFC および PC クライアントに次の設定が必要です。
NFC クライアント
作業フォルダーを作成し、クライアント アーキテクチャに対応する TAEF バイナリを HLK コントローラーから作業ディレクトリにコピーします。 一般的な HLK Studio のセットアップでは、TAEF バイナリは次のディレクトリに配置されます。
C:\Program Files (x86)\Windows Kits\10\Testing\Runtimes\TAEF\<arch>\*\MinTE\*
<arch> は、x86、x64、arm、arm64 のいずれかです。
次の HLK Studio の場所から上で作成した作業ディレクトリに、NfcRemotePeerService.dll をコピーします。
C:\Program Files (x86)\Windows Kits\10\Hardware Lab Kit\Tests\<arch>\NFC\NfcRemotePeerService.dll
<arch> は、x86、amd64、arm、arm64 のいずれかです。
PC クライアント (* NITT を使用する場合のセットアップ)
作業フォルダーを作成し、クライアント アーキテクチャに対応する TAEF バイナリを HLK コントローラーから作業ディレクトリにコピーします。 一般的な HLK Studio のセットアップでは、TAEF バイナリは次のディレクトリに配置されます。
C:\Program Files (x86)\Windows Kits\10\Testing\Runtimes\TAEF\<arch>\*\MinTE\*
<arch> は、x86、x64、arm、arm64 のいずれかです。
次の HLK Studio の場所から上で作成した作業ディレクトリに、NfcNittController.exe をコピーします。
C:\Program Files (x86)\Windows Kits\10\Hardware Lab Kit\Tests\<arch>\NFC\NfcNittController.exe
<arch> は、x86、amd64、arm、arm64 のいずれかです。
次の HLK Studio の場所から上で作成した作業ディレクトリに、MuttUtil.dll をコピーします。
C:\Program Files (x86)\Windows Kits\10\Hardware Lab Kit\Tests\<arch>\usb\MuttTools\MuttUtil.dll
<arch> は、x86、amd64、arm、arm64 のいずれかです。
PC クライアント (* NITT を使用しない場合のセットアップ)
作業フォルダーを作成し、クライアント アーキテクチャに対応する TNfcManualHelper.exe を HLK コントローラーから作業ディレクトリにコピーします。 一般的な HLK Studio のセットアップでは、NfcManualHelper.exe は次のディレクトリに配置されます。
C:\Program Files (x86)\Windows Kits\10\Hardware Lab Kit\Tests\<arch>\NFC\NfcManualHelper.exe
<arch> は、x86、x64、arm、arm64 のいずれかです。
HLK を使用したテストの実行
HLK Studio
HLK Studio で、次の図に示すように、[テスト] タブからテストを選択します。
[選択したテストの実行] をクリックします
(NITT を使用せずに) 手動でテストを実行する場合は、次の図に示すように、パラメーターの値を nitt から manual に変更します。
NFC クライアントを使用したテスト
コマンド プロンプトを開き、上で作成した作業フォルダーにアクセスします。
次のコマンドを実行します。
TE.exe NfcRemotePeerService.dll /p:server=<ip_of_dut>
<ip_of_dut> は、DUT の IP アドレスです。
NfcRemotePeerService.dll では、DUT で実行されているテストに接続し、テストからコマンドを受信します。 これらのコマンドは、NFC クライアントで近距離近接通信のパブリケーションとサブスクリプションを作成するタイミングを NfcRemotePeerService.dll に指示します。 DUT と NFC クライアントが一緒にタップされると、パブリケーションとサブスクリプションが起動し、NFC のピア ツー ピア シナリオが実行されます。
PC クライアントでのテスト (* NITT を使用している場合のセットアップ)
コマンド プロンプトを開き、上で作成した作業フォルダーにアクセスします。
次のコマンドを実行します。
nfcnittcontroller.exe -server <ip_of_dut> -tagIndex <tag_index> -reader <reader_name>
<ip_of_dut> は DUT の IP アドレス、<tag_index> は NITT ボード タグ インデックス、<reader_name> は PC クライアントに接続されているスマート カード リーダーの名前です。 <tag_index> の値は、それぞれ、NFC フォーラム準拠の T1T、T2T、T3T、T4T に対応する 1、2、3、4 です。 PC クライアントに接続されているスマート カード リーダーの名前を確認するには、NfcManualHelper.exe の -listReaders オプションを使用します (下記参照)。
NfcNittController.exe では、DUT で実行されているテストに接続し、テストからコマンドを受信します。 これらのコマンドは、NITT を使用してアクションを実行するタイミングを NfcNittController.exe に指示します。 これらのアクションは自動的に実行されるため、手動での操作は必要ありません。 アクションの例: RF シールドを開閉し、NITT 上のタグをオンまたはオフにします。
PC クライアント のテスト (* NITT を使用しない場合のセットアップ)
コマンド プロンプトを開き、上で作成した作業フォルダーにアクセスします。
次のコマンドを実行します。
nfcmanualhelper.exe -server <ip_of_dut> -reader <reader_name>
<ip_of_dut> は DUT の IP アドレス、<reader_name> は PC クライアントに接続されているスマート カード リーダーの名前です。 PC クライアントに接続されているスマート カード リーダーの名前を確認するには、次のコマンドを実行します。
nfcmanualhelper.exe -listReaders
NfcManualHelper.exe では、DUT で実行されているテストに接続し、テストの実行中の処理方法についての指示を出力します。 指示の例: DUT を NFC クライアントにタップします、DUT をスマート カード リーダーにタップします、DUT を近距離近接通信にタップします。