Запуск тестов
23 января 2025
ID 242320
При сборке программы с помощью команды kosctl build --with-test в директории хранения артефактов сборки создается директория test с простыми тестами для каждой программы. Тесты используют фреймворк gtest и запускаются из образа для QEMU. Запуск тестов и формирование отчетов по результатам тестирования осуществляется утилитой Meow по запросу инструмента kosctl. Утилита Meow - специальный инструмент для запуска тестов и получения отчетов по результатам тестирования. Утилита располагается в директории /opt/KasperskyOS-SDK-KISG-Platform-<version>/toolchain/meow. Подробную информацию по командам утилиты Meow вы можете получить, выполнив команду: /opt/KasperskyOS-SDK-KISG-Platform-<version>/toolchain/meow/meow.py --help.
Команда kosctl test [options] выполняет запуск тестов из директории test/. По умолчанию PROJECT_DIR – текущая директория, в которой выполняется команда. Журналы и результаты запуска тестов по умолчанию располагаются в директории .build/x86_64-pc-kos-debug/bin/tests/output. Доступные параметры команды:
--project-dirКорневая директория решения. По умолчанию используется директория
./.--device,-dИмя устройства или эмулятора, к которому требуется подключиться для выполнения указанной операции.
--build-dirДиректория хранения артефактов сборки. По умолчанию используется директория
.build.--build-features,-bВыбор дополнительных параметров сборки. Вы можете получить доступный список дополнительных параметров сборки с помощью команды
kosctl list-build-features.--arch,-aВыбор архитектуры.
--no-buildНе выполнять сборку решения перед запуском тестов.
--timeoutВремя ожидания для выполнения каждого из тестов. Опция может быть передана как строка типа
duration, например, 1m30s, или как количество секунд, например 90. По умолчанию установлено время ожидания в 60 секунд.--show-failuresКоличество тестов, завершившихся с ошибкой, по которым нужно вывести общие данные. При использовании этой опции необходимо задать количество тестов для вывода общих данных используя знак равенства, например:
--show-failures=5.--coverage-providerВыбор поставщика информации по покрытию кода тестами. Для автоматического определения не устанавливайте значение параметру или установите значение
auto.--full-summaryВывести общие данные по всем тестам.
--analyse-onlyВывести общие данные по последнему запуску тестов.
--gtest-filter,-FСборка тестов по указанному фильтру.
--threads,-jВыбор количества потоков процессора для выполнения тестов. По умолчанию используется четыре потока процессора.
--mask,-mМаска для фильтрации по тестовым скриптам.
--run-disabled,-fВключить disabled тесты.
--tags,-TТеги тестов, разделенные пробелами. Теги с префиксами будут исключены.
--direct-params,-dСтрока с параметрами, которые будут переданы в утилиту
Meow.--platformВыбор типа платформы.