Spec-Zone.ru › Qt 5.9

Qt Quick Test Справочная документация

Введение

Qt Quick Test — это фреймворк для модульных тестов приложений QML. Тестовые кейсы написаны как JavaScript-функции внутри типа TestCase:

import QtQuick 2.3
import QtTest 1.0

TestCase {
    name: "MathTests"

    function test_math() {
        compare(2 + 2, 4, "2 + 2 = 4")
    }

    function test_fail() {
        compare(2 + 2, 5, "2 + 2 = 5")
    }
}

Функции, имена которых начинаются с test_, обрабатываются как тестовые кейсы, которые необходимо выполнить. Подробнее о написании тестовых кейсов см. в документации по типам TestCase и SignalSpy.

Запуск тестов

Тестовые кейсы запускаются с помощью C++-оболочки, которая состоит из следующего кода:

#include <QtQuickTest/quicktest.h>
QUICK_TEST_MAIN(example)

Где «example» — идентификатор для уникальной идентификации этого набора тестов. Вам следует добавить CONFIG += qmltestcase. например:

TEMPLATE = app
TARGET = tst_example
CONFIG += warn_on qmltestcase
SOURCES += tst_example.cpp

Тестовая оболочка рекурсивно сканирует указанную исходную директорию на наличие файлов «tst_*.qml». Если QUICK_TEST_SOURCE_DIR не определено, то при запуске оболочки будет произведено сканирование текущей директории. Другие файлы *.qml могут отображаться для вспомогательных QML-компонентов, которые используются тестом.

Опция командной строки -input может быть установлена во время выполнения для запуска тестовых кейсов из другой директории. Это может потребоваться для запуска тестов на целевом устройстве, где имя скомпилированной директории относится к хосту. Например:

tst_example -input /mnt/SDCard/qmltests

Также можно запустить один файл, используя опцию -input. Например:

tst_example -input data/test.qml
tst_example -input <full_path>/test.qml

Примечание: Указание полного пути к файлу qml-теста, например, необходимо для теней-сборок.

Если ваш тестовый кейс требует QML-импорты, то вы можете добавить их как -import опции в командную строку программы-теста.

Если в вашем файле .pro указан IMPORTPATH, каждый путь импорта, добавленный в IMPORTPATH, будет передан как аргумент командной строки при запуске теста с помощью «make check»:

IMPORTPATH += $$PWD/../imports/my_module1 $$PWD/../imports/my_module2

Опция командной строки -functions вернёт список текущих функций тестов. Возможно запустить одну функцию теста, используя имя тестовой функции в качестве аргумента. Например:

tst_example Test_Name::function1

Опция командной строки -help вернёт все доступные опции.

tst_example -help

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qtquick-qtquicktest.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API