Google is committed to advancing racial equity for Black communities. See how.
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 CICodecov

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 Python CLI dla protokołu Spinel , używany do konfigurowania i zarządzania OpenThread NCP lub RCP . Ten interfejs wiersza polecenia jest przeznaczony głównie do testów CI, ale można go używać ręcznie do eksperymentowania z wystąpieniami współprocesorów OpenThread i testowania ich.

Pyspinel służy do:

  • Dodaj symulowane testy koprocesora do ciągłej integracji.
  • Zautomatyzuj testowanie stanowisk testowych z oprogramowaniem układowym procesorów współpracujących na sprzęcie.
  • Debuguj kompilacje współprocesorów OpenThread.
  • Przekształć współprocesor OpenThread w sniffer pakietów.

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