Список тестирования
Актуальный список для ручного тестирования релизов Клевера.
Критичность: критично, средняя критичность, не критично.
Образ Клевера
Общие тесты
- Раздача 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++
- Работа примера с компьютерном зрением:
red_circle.py
- Отсутствие неожиданного жора памяти и 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.py
- Корректная работа
rosrun clover selfcheck.py
, отсутствие варнингов, анализ вывода - Выводит ориентацию камеры текстом
- Делает
commander check
- Показывается, что используется наш форк прошивки и версию образа
- Показывает возникающие ошибки и опечатки, допущенные в .launch файлах
- Проверка на throttling
Автоматизированные тесты
- Корректная работы автоматизированных тестов:
- Тест автономного полета:
rosrun clover autotest_flight.py
- Тест автономного полета по маркерам:
rosrun clover autotest_aruco.py
- Тест LED-ленты:
rosrun clover autotest_led.py
- Тест автономного полета:
Тесты simple_offboard
- Корректная работа simple_offboard – взлет, полет в точку в любом фрейме, отсутствие проблем с
yaw
иyaw_rate
- В фрейме
body
- В фрейме
aruco_map
- В фрейме
map
- В фрейме
navigate_target
- В фрейме
terrain
- Корректное выполнения флипа
- Возможность лететь к отдельным маркерам в карте, которые вне кадра и в кадре
- Корректное детектирование статуса 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
не падает в случае маленьких размеров карты и маркеров
Тесты LED-ленты
- Работает нода LED ленты на RPi 4
- Дополнительная проверка на RPi 3, RPi 4 Rev. 1.4
- Корректная работа всех notify эффектов заданных в
led.launch
- Низкоуровневое управление отдельными диодами
- Высокоуровневое управление эффектами
Тесты pigpiod
- Корректная работа pigpiod, возможность работы с сонаром, сервой и электромагнитом по мануалу
- Одновременная работа pigpiod и rpi_ws281x (правильная работа светодиодной ленты и сервы)
Блочное программирование
- Корректная работа функционала блочного программирования
- Работа функций сохранение/загрузка/удаление
- Работа с pigpiod
- Работа всех примеров
Дополнительно
- ROS ноды не падают в случае потери всех соединений (удобно проверять с экраном)
- Работает
rosshow
- Работает
espeak
- Работает аргумент
rectify
вmain_camera.launch
- Работает LIRC
- Работа iOS-пульта из коробки
- Работа Android-пульта из коробки