Я пытаюсь написать модульный тест для приложения с графическим интерфейсом, используя QTestLib. Проблема в том, что один из слотов создает диалоговое окно файла с использованием exec (), и я не нашел возможности взаимодействовать с этим диалогом.
Слоты, которые создают диалог, связаны с QAction. Итак, первая проблема заключается в том, что тест блокирует, когда я запускаю QAction в тесте, так как это приводит к вызову exec ().
Вот мой фрагмент кода
QActoin* currentActoin;
if(currentAction->text() == action)
{
currentAction->trigger();
..........
}
Здесь, когда я запустил действие, он открывает диалоговое окно файла, которое требует ручного вмешательства, чтобы вернуться в программу. Как я могу вернуться к тестовому коду без ручного вмешательства? Т.е. как я могу получить обработчик (указатель) на диалог файла? Как установить значение для файла диалога?
Задача ещё не решена.