專案測試
Google 發布的 OpenThread 會透過多種工具進行測試。
持續整合
OpenThread 使用 GitHub Actions 進行持續整合 (CI) 和 Codecov 以提供程式碼涵蓋率。
CI 使用 GNU Arm Embedded Toolchain 對所有範例平台以及使用 GCC、Clang 和 Android 的模擬範例執行建構檢查。也會針對 x86、平台架構和 Thread 裝置設定建立及測試。如要進一步瞭解特定測試和檢查,請參閱工作流程。
此外,CI 會執行以下動作:
OSS-Fuzz 音樂
OpenThread 使用 OSS-Fuzz 進行模糊處理。在這項測試技術中,無效和隨機的輸入項目會以高頻率和音量提交至軟體,以找出記憶體流失或當機等問題。
請參閱 OpenThread 存放區,瞭解目前的模糊處理建構目標。
產品測試
使用下列工具測試您自己的 OpenThread 產品。
威雷莎克
Wireshark 是一種開放原始碼網路通訊協定分析工具,適用於在實體和虛擬網路介面上執行的流量。Wireshark 2.4.0 以上版本支援 Thread 通訊協定。您可以在 wireshark.org 找到這項工具的說明文件和下載項目。
如要進一步瞭解 Wireshark 支援 Thread 的方式,請參閱使用 Pyspinel 封包封包。
Pyspinel (Pyspinel)
Pyspinel 是 Spinel 通訊協定的 Python CLI,用於設定及管理 OpenThread NCP 或 RCP。這個 CLI 主要用於持續整合測試,但可以手動用於測試及測試 OpenThread 輔助處理器執行個體。
Pyspinel 的用途如下:
- 新增模擬輔助處理器測試以持續整合。
- 自動測試在硬體上執行共同處理器韌體的測試用具。
- 對 OpenThread 的共同處理器版本進行偵錯。
- 將 OpenThread Co-Processor 轉換為封包封包。
如需詳細資訊,請參閱 Pyspinel 存放區中的 README
。