Инструкция по запуску тестов Qt
Аврора IDE поддерживает создание тестов при помощи Qt-модуля Test.
Qt Test — это среда для модульного тестирования приложений и библиотек на основе Qt. С этим модулем в Аврора IDE можно работать так же, как и в оригинальном Qt.
Для ОС Аврора опубликован пример проекта с тестами QtTest. Данная инструкция иллюстрируется фрагментами его конфигурационных файлов.
Содержание:
Требования
Для запуска автотестов в Аврора SDK 5.2.1 и выше должны быть соблюдены следующие требования:
-
Устройство с ОС Аврора 5.2.0 и выше.
-
В проекте должно быть несколько целей сборки (qmake или CMake): Например, как в проекте QtTest, где конфигурационные файлы располагаются по следующим путям:
./app/app.pro ./ru.auroraos.QtTest.pro ./tests/tests.pro -
В .spec-файле проекта должны быть указаны .rpm-пакеты для основного и тестового приложения. Например, как в проекте QtTest:
Name: ru.auroraos.QtTest Summary: Qt Test example ... %package tests Summary: test files for %{name} ... %files %defattr(-,root,root,-) %{_bindir}/%{name} %defattr(644,root,root,-) %{_datadir}/%{name} %{_datadir}/applications/%{name}.desktop %{_datadir}/icons/hicolor/*/apps/%{name}.png %files tests %defattr(-,root,root,-) %{_bindir}/%{name}-tests
Запуск тестов
-
Выбрать в разделе Проекты → Запустить конфигурацию запуска, содержащую .desktop-файл. Затем собрать и установить проект на мобильном устройстве:

Примечание После установки приложения в систему в песочнице для данного приложения будет ассоциирован контейнер. Этот контейнер используется для исполняемых файлов с тестами. Если приложение предварительно не установить, тесты не получится запустить в контейнере приложения.
-
Выбрать конфигурацию запуска, содержащую тесты:

-
Открыть вкладку Подробнее, выбрать опцию Включить, после чего выбрать ID родительского приложения.

Тесты можно выполнить, запустив проект. Перед этим должна быть выбрана конфигурацию запуска, содержащая тесты.
Результат выполнения тестов будет доступен на вкладке Вывод приложения. Пример результата QtTest:
********* Start testing of TestMyClass *********
Config: Using QtTest library 5.6.3, Qt 5.6.3 (i386-little_endian-ilp32-qreal_float shared (dynamic) release build; by GCC 8.3.0 20190222 (Aurora OS gcc 8.3.0-4))
PASS : TestMyClass::initTestCase()
PASS : TestMyClass::testAdd()
PASS : TestMyClass::testMultiply()
PASS : TestMyClass::cleanupTestCase()
Totals: 4 passed, 0 failed, 0 skipped, 0 blacklisted
********* Finished testing of TestMyClass *********