Список тестирования

Актуальный список для ручного тестирования релизов Клевера.

Критичность: критично, средняя критичность, не критично.

Образ Клевера

Общие тесты

  • Раздача Wi-Fi
  • Возможность подключения по SSH по IP и Hostname
  • Успешное подключение COEX Pix по USB (по умолчанию)
  • Успешное подключение COEX Pix по UART (с настройкой)
  • Бридж для QGC – корректное подключение по TCP
  • Бридж для QGC – корректное подключение по UDP-b
  • Раздача главной страницы
  • Раздача пользовательской документации (RU/EN), отсутствие битых изображений и т. д.
  • Работа веб-терминала Butterfly
  • Работа web_video_server
  • Корректная работа драйвера камеры, корректные изображения и данные в топиках
  • Корректная работа драйвера vl53l1x (i2c к Raspberry), в том числе топика ~data
  • Корректная работа optical flow и всех его топиков, полет по optical flow
  • Полет по полю маркеров
  • Корректная установка OpenCV – возможность использования из Python и C++
  • Отсутствие неожиданного жора памяти и CPU (можно контролировать с помощью selfcheck.py или htop)
  • Автоматическая перекалибровка камеры при изменении разрешения

Тесты веб-части

  • Работа веб-просмотрщика топиков
  • Работа веб-консоли
  • Работа веб 3D-визуализации ArUco (map, detect)
  • Работа веб 3D-визуализации web_rviz
  • Работа веб 3D-визуализации web_visualization_aruco_map
  • Работает отображение карты ArUco /aruco_map/image и в snapshot, и в debug
  • Визуализация расположения камеры в web rviz
  • Правильное отображение осей в /aruco_map/image

Тесты selfcheck.pyopen in new window

  • Корректная работа rosrun clover selfcheck.py, отсутствие варнингов, анализ вывода
  • Выводит ориентацию камеры текстом
  • Делает commander check
  • Показывается, что используется наш форк прошивки и версию образа
  • Показывает возникающие ошибки и опечатки, допущенные в .launch файлах
  • Проверка на throttling

Тесты simple_offboard

  • Корректная работа simple_offboard – взлет, полет в точку в любом фрейме, отсутствие проблем с yaw и yaw_rate
  • В фрейме body
  • В фрейме aruco_map
  • В фрейме map
  • В фрейме navigate_target
  • Корректное выполнения флипа
  • Возможность лететь к отдельным маркерам в карте, которые вне кадра и в кадре
  • Корректное детектирование статуса kill switch при выполнение команды с флагом auto_arm
  • Корректная работа outdoor по GPS-координатам
  • Работают программы из папки ~/examples

Тесты ArUco

  • Распознавание ArUco-маркеров, корректная работа всех топиков пакета aruco_detect и aruco_map
  • VPE-полеты по маркерам на полу
  • VPE-полеты по маркерам на потолке
  • Корректное распознавание ArUco-маркеров и ArUco-карты (проверка с помощью rviz или debug)
  • Работает в случае если используется слишком большой ID
  • Работают комментарии в файле карты, а также в карте используется от 4 до 8 параметров
  • Полет по Optical Flow над 1 маркером
  • aruco_map не падает в случае маленьких размеров карты и маркеров

Тесты pigpiod

  • Корректная работа pigpiod, возможность работы с сонаром, сервой и электромагнитом по мануалу
  • Одновременная работа pigpiod и rpi_ws281x (правильная работа светодиодной ленты и сервы)

Тесты LED-ленты

  • Работает нода LED ленты на RPi 4
  • Дополнительная проверка на RPi 3, RPi 4 Rev. 1.4
  • Корректная работа всех notify эффектов заданных в led.launch
  • Низкоуровневое управление отдельными диодами
  • Высокоуровневое управление эффектами

Блочное программирование

  • Корректная работа функционала блочного программирования
  • Работа функций сохранение/загрузка/удаление
  • Работа с pigpiod
  • Работа всех примеров

Дополнительно

  • ROS ноды не падают в случае потери всех соединений (удобно проверять с экраном)
  • Работает rosshow
  • Работает espeak
  • Работает LIRC
  • Работа iOS-пульта из коробки
  • Работа Android-пульта из коробки