Установка времени ожидания для Qt Test

Я использую Qt Test, для написания модульных тестов для некоторых сложных вычислительных алгоритмов. Процесс использует значительное количество времени, и когда он запускается на старом компьютере, процесс завершается сбоем, потому что время ожидания:

********* Start testing of KnotTest *********
Config: Using QtTest library 5.6.2, Qt 5.6.2 (i386-little_endian-ilp32 shared (dynamic) release build; by MSVC 2013)
PASS   : MyTest::initTestCase()
QFATAL : MyTest::test_benchmark() Test function timed out
FAIL!  : MyTest::test_benchmark() Received a fatal error.
Unknown file(0) : failure location
Totals: 1 passed, 1 failed, 0 skipped, 0 blacklisted
********* Finished testing of KnotTest *********

Как установить настраиваемое время ожидания для сгенерированной тестовой программы?

2 ответа

Решение

Вы можете переопределить время ожидания, используя переменную окружения QTEST_FUNCTION_TIMEOUT, Время ожидания должно быть указано в миллисекундах. По умолчанию Qt использует время ожидания 300000 миллисекунд (5 минут).

Эта переменная среды недокументирована, поэтому я не могу гарантировать, что она будет продолжать присутствовать в будущих версиях Qt.

Кроме того, вы можете программно установить переменные среды, используя qputenv:

http://doc.qt.io/qt-5/qtglobal.html

В QtCreator вы можете изменить время ожидания по умолчанию в

Сервис -> Параметры -> Тестирование -> Общее: Тайм-аут

Смотрите также "Построение и запуск тестов" по ​​следующей ссылке:

http://doc.qt.io/qtcreator/creator-autotest.html

Другие вопросы по тегам