Google is committed to advancing racial equity for Black communities. See how.
Эта страница была переведа с помощью Cloud Translation API.
Switch to English

Тестирование

Тестирование проекта

OpenThread, выпущенный Google, протестирован рядом инструментов.

Непрерывная интеграция

Трэвис Си Кодеков

OpenThread использует Travis CI для непрерывной интеграции (CI) и Codecov для покрытия кода.

CI выполняет проверки сборки для всех примеров платформ с помощью GNU Arm Embedded Toolchain и для смоделированного примера с использованием GCC, Clang и Android. Он также выполняет сборку и тестирование на соответствие x86, архитектуре платформы и конфигурациям устройств Thread. Для получения дополнительной информации о конкретных целях сборки см. Матрицу сборки OpenThread Travis .

Кроме того, CI выполняет:

  1. Проверка стиля кода с использованием clang-format
  2. Модульные тесты
  3. Функциональные тесты против CLI, wpantundtoranj ) и Pyspinel

OSS-Fuzz

OpenThread прошел фаззинг-тестирование с помощью OSS-Fuzz . В этом методе тестирования неверные и случайные входные данные с высокой частотой и в больших объемах отправляются в программное обеспечение для поиска таких проблем, как утечки памяти или сбои.

Текущие цели сборки фаззинга см. В репозитории OpenThread.

Тестирование продукта

Используйте следующие инструменты для тестирования собственного продукта OpenThread.

Wireshark

Wireshark - это анализатор сетевых протоколов с открытым исходным кодом для трафика, проходящего через физические и виртуальные сетевые интерфейсы. Протокол Thread поддерживается в Wireshark 2.4.0 и новее. Документацию и загрузки для этого инструмента можно найти на сайте wirehark.org .

Дополнительные сведения о том, как Thread поддерживается в Wireshark, см. В разделе Анализ пакетов с помощью Pyspinel .

Писпинель

Pyspinel - это Python CLI для протокола Spinel , используемый для настройки и управления NCP или RCP OpenThread . Этот интерфейс командной строки в первую очередь предназначен для тестирования CI, но может использоваться вручную для экспериментов и тестирования экземпляров сопроцессора OpenThread.

Писпинель применяется для:

  • Добавьте моделируемое тестирование сопроцессора к непрерывной интеграции.
  • Автоматизируйте тестирование тестовых стендов с аппаратным обеспечением с микропрограммой сопроцессора.
  • Отладка сборок сопроцессора OpenThread.
  • Преобразуйте сопроцессор OpenThread в анализатор пакетов.

Для получения дополнительной информации см. README в репозитории Pyspinel.