Google si impegna a promuovere l'equità razziale per le comunità nere. Vedi come.
Questa pagina è stata tradotta dall'API Cloud Translation.
Switch to English

analisi

Test di progetto

OpenThread rilasciato da Google è testato da numerosi strumenti.

Integrazione continua

Travis CI Codecov

OpenThread utilizza Travis CI per l'integrazione continua (CI) e Codecov per la copertura del codice.

CI esegue controlli di build per tutte le piattaforme di esempio usando GNU Arm Embedded Toolchain e per l'esempio simulato usando GCC, Clang e Android. Costruisce e verifica anche su x86, l'architettura della piattaforma e le configurazioni dei dispositivi Thread. Per ulteriori informazioni su target di build specifici, consultare la matrice di build di OpenThread Travis .

Inoltre, CI esegue:

  1. Controlli dello stile del codice usando il clang-format
  2. Test unitari
  3. Test funzionali contro CLI, wpantund (con toranj ) e Pyspinel

OSS-Fuzz

OpenThread è testato su fuzz con OSS-Fuzz . In questa tecnica di test, gli input non validi e casuali vengono inviati al software ad alta frequenza e volume per individuare problemi come perdite di memoria o arresti anomali.

Vedi il repository OpenThread per gli attuali target di build fuzzing .

Test del prodotto

Utilizzare i seguenti strumenti per testare il proprio prodotto OpenThread.

Wireshark

Wireshark è un analizzatore di protocollo di rete open source per il traffico in esecuzione su interfacce di rete fisiche e virtuali. Il protocollo Thread è supportato in Wireshark 2.4.0 e versioni successive. La documentazione e i download per questo strumento sono disponibili su WireShark.org .

Per ulteriori informazioni su come è supportato il thread in Wireshark, vedere Sniffing dei pacchetti con Pyspinel .

Pyspinel

Pyspinel è una CLI Python per il protocollo Spinel , utilizzata per configurare e gestire i PCN OpenThread . Questa CLI è principalmente indirizzata ai test CI, ma può essere utilizzata manualmente per sperimentare e testare le istanze NCP OpenThread.

Pyspinel è usato per:

  • Aggiungi test NCP simulati all'integrazione continua.
  • Automatizza i test dei banchi di prova che eseguono il firmware NCP sull'hardware.
  • Debug build NCP di OpenThread.
  • Converti un NCP OpenThread in uno sniffer di pacchetti.

Per ulteriori informazioni, consultare il README nel repository Pyspinel.