執行認證測試案例

執行測試案例之前,請確認所有測試裝置 (Golden and DUT) 皆已安裝已安裝的 GRL Test Harness 和 Harness 自動化工具,並連接至 Windows 機器。

使用 Harness 自動化工具

所有測試案例都是從 tools/harness-automation 目錄執行。方法有兩種:

  • start.sh:使用 Bash,此套件隨附於 Git for Windows
  • start.bat:從 Windows 指令列 (cmd)

如要執行所有測試案例:

現金
./start.sh
Windows cmd
./start.bat

執行個別測試案例 (名稱有大小寫之分):

現金
./start.sh Router_5_1_1 Leader_5_1_1
Windows cmd
./start.bat Router_5_1_1 Leader_5_1_1

使用 GRL Test Harness

測試床設定完成後,系統會根據 DUT 的所選角色執行測試案例批次。「測試選項」部分會列出測試計劃下所選角色的可用測試案例:

OT 認證測試習慣

視需要選取測試案例,然後按一下綠色播放按鈕即可執行。

手動測試作業

在測試過程中,「測試作業」會提示使用者手動輸入。

網路憑證

針對測試計劃第 5、6、7 和 9 節中的測試案例,網路憑證必須設為架構外的設定。例如:

裝置啟動期間的參數設定:

panid 0xface
Done
channel 20
Done
networkname GRL
Done
extpanid 000db80000000000
Done

「『UUT as aLead』」;

dataset activetimestamp 1
Done
dataset commit active
Done

>「以裝置做為最終裝置」;設定:

mode rsn
Done

[DUT as SED] 配置,其中 pollperiod (以毫秒為單位) 設為測試 Harness 中的預設 SedPollingRate

mode s
Done
pollperiod 5000
Done

啟動 Thread 介面與堆疊:

ifconfig up
Done
thread start
Done

配置者角色設定

針對測試計畫第 8 節中的測試案例,請設定「佣金」角色。

在啟動 Thread 堆疊後啟動調度員:

commissioner start
Done

新增轉向資料:

commissioner joiner add eui64 THREADJPAKETEST 200

eui64 是由工廠指派的 IEEE EUI-64 識別碼,可透過 eui64 CLI 指令取得。THREADJPAKETEST 是連接者憑證,用來產生裝置的預先共用金鑰 (PSKd)。在設定的逾時時間過後,系統會移除彙整器。

我們建議在 8.2.x 的佣金測試案例中,使用 500 做為逾時值。

啟動 Thread 介面後,使用彙整工具憑證 THREADJPAKETEST 來啟動彙整者角色:

joiner start THREADJPAKETEST

啟動指定的 Thread 介面後,使用指定的佈建網址啟動「彙整者」角色:

joiner start THREADJPAKETEST www.threadgroup.org

其他輸入內容

測試作業可能會提示其他手動操作,並提供用於這些作業的值 (例如 IPv6 位址)。如果出現下列提示,請使用以下 OpenThread CLI 指令:

Prompt CLI 指令
詳細地址 extaddr
IPv6 位址 ipaddr
加入會議的 MAC 位址 eui64
設定佣金佈建帳戶網址 commissioner provisioningurl www.threadgroup.org
恢復原廠設定 factoryreset
取得所有 TLV dataset mgmtgetcommand active address ipv6-address
獲取網絡 ChannelMask (0x35)、 MeshLocal ULA 字首 (0x07)、Network Name (0x03) dataset mgmtgetcommand active address ipv6-address binary 350703
獲取網絡通道 (0x00)、 MeshLocal ULA 前綴 (0x07)、網絡名稱 (0x03)、掃描持續時間 (0x38)、能量列表 (0x39) dataset mgmtgetcommand active address ipv6-address binary 0007033839

如需所有 CLI 指令的清單,請參閱 OpenThread CLI 參考資料

認證提示

啟用混合測試床的裝置選項

在 Thread 認證測試期間,系統會使用包含 ARM、NXP、Silicon Labs 和 OpenThread 的參考堆疊的混合式測試床。您可以在 C:\GRL\Thread1.1\Thread_Harness\TestScripts\TopologyConfig.txt 檔案中定義測試床拓撲。

如要啟用裝置選取功能,以執行與 Thread Group's ATL 完全相同的參照平台的測試案例,請將 C:\GRL\Thread1.1\Config\Configuration.ini 檔案中的 EnableDeviceSelection 參數設為 True

EnableDeviceSelection = True

射頻防護

如為 9.2.9 (Leader、路由器) 和 9.2.10 (Router, ED1, SED1) 的測試案例,則必須特別注意,確保正確的裝置受到 RF 保護。假設所有裝置都是在角色中進行設定,因此每項測試都需要:

  1. 僅使用連接至 Windows 機器的 NXP Sniffer 來啟動測試。這樣可以避免裝置測試功能自動找出裝置。
  2. 逐一插入測試裝置,並記下對應的序列埠。
  3. 將下列其中一種裝置放入 RF 盾牌方塊中:
    • 測試 9.2.9:
      • 負責人和顧問
      • Router1、路由器 2 和 Sniffer
    • 測試 9.2.10:
      • 負責人和顧問
      • 路由器、ED、SED 和 Sniffer
  4. 在「測試測試工具」的「Configure Test Bed」頁面上,根據測試案例,在「Test Bed」區段中,按下列方式將每部裝置設定為下列排序順序:
    射頻防護測試案例的最終裝置排序順序
    9.2.91. 路由器 2
    2. 佣金
    3. 路由器 1
    4. 領先者
    9.2.101. SED
    2. ED 3
    路由器 1
    4. 佣金
    5. 領先者
    1. 清除任何現有裝置的「測試床」部分。
    2. 將特定測試案例拓撲適用的裝置從左側的 [Support Hardware] 部分拖曳到右側的 [Test Bed] 區段。請務必將這些結果拖曳至最終排序順序的反向順序。舉例來說,如果是測試案例 9.2.9,請先拖曳領導者,再拖曳路由器 1,依此類推。如果拖曳錯誤的裝置,請清除「Test Bed」部分中的裝置,然後重新開始。
    3. 在「Test Bed」(測試床) 區段,以最終排序順序為每個裝置填入序號或 IP 資訊。舉例來說,在測試案例 9.2.9 中,拖曳後的第一個裝置是 Router2,第二個裝置是佣金,依此類推。
    4. 選取「支援硬體」清單下方的 [啟用自動 DUT 裝置選取功能] 核取方塊。
    5. 選取 DUT 的 [Set as DUT] (設為 DUT) 圓形按鈕。
    6. 選取 [全部連結] 即可開始探索裝置。
  5. 執行測試案例(9.2.9 或 9.2.10)。按照 Test Harness 的指示,在每一組裝置上鎖定並解除保護。