Google jest zaangażowany w promowanie równości rasowej dla społeczności czarnych. Zobacz jak.
Ta strona została przetłumaczona przez Cloud Translation API.
Switch to English

Testowanie

Testowanie projektu

OpenThread wydany przez Google jest testowany przez szereg narzędzi.

Ciągła integracja

Travis CI Codecov

OpenThread używa Travis CI do ciągłej integracji (CI) i Codecov do pokrycia kodu.

CI przeprowadza testy kompilacji dla wszystkich przykładowych platform przy użyciu GNU Arm Embedded Toolchain oraz dla symulowanego przykładu przy użyciu GCC, Clang i Android. Tworzy również i testuje pod kątem x86, architektury platformy i konfiguracji urządzeń Thread. Aby uzyskać więcej informacji na temat konkretnych celów kompilacji, zobacz macierz kompilacji OpenThread Travis .

Ponadto CI wykonuje:

  1. Sprawdzanie stylu kodu za pomocą clang-format
  2. Testy jednostkowe
  3. Testy funkcjonalne z CLI, wpantund (z toranj ) i Pyspinel

OSS-Fuzz

OpenThread jest testowany pod kątem fuzz z OSS-Fuzz . W tej technice testowania nieprawidłowe i losowe dane wejściowe są przesyłane z dużą częstotliwością i głośnością do oprogramowania w celu wykrycia problemów, takich jak wycieki pamięci lub awarie.

Zobacz repozytorium OpenThread dla aktualnych fuzzingowych celów kompilacji .

Testowanie produktu

Użyj następujących narzędzi, aby przetestować swój własny produkt OpenThread.

Wireshark

Wireshark to analizator protokołów sieciowych typu open source dla ruchu działającego na fizycznych i wirtualnych interfejsach sieciowych. Protokół Thread jest obsługiwany w Wireshark 2.4.0 i nowszych. Dokumentację i pliki do pobrania dotyczące tego narzędzia można znaleźć pod adresem wireshark.org .

Aby uzyskać więcej informacji na temat obsługi wątków w Wireshark, zobacz Sniffowanie pakietów za pomocą Pyspinel .

Pyspinel

Pyspinel to interfejs wiersza poleceń Pythona dla protokołu Spinel , używany do konfigurowania i zarządzania punktami NCP OpenThread . Ten interfejs wiersza polecenia jest przeznaczony głównie do testów CI, ale można go używać ręcznie do eksperymentowania i testowania wystąpień OpenThread NCP.

Pyspinel służy do:

  • Dodaj symulowane testy NCP do ciągłej integracji.
  • Zautomatyzuj testowanie stanowisk testowych z oprogramowaniem układowym NCP na sprzęcie.
  • Debugowanie kompilacji NCP OpenThread.
  • Przekonwertuj OpenThread NCP na sniffer pakietów.

Aby uzyskać więcej informacji, zobacz plik README w repozytorium Pyspinel.