Проект модульного тестирования QTestlib для доступа к классам в основном проекте в QTCreator.

Я использую QT Creator и хочу запускать модульные тесты в отдельном проекте. Как я могу ссылаться на классы в основном проекте из моего тестового проекта?


person odie    schedule 05.06.2011    source источник


Ответы (1)


Я понимаю, что это старый вопрос, но вот несколько шагов, чтобы сделать это легко:

  • Переместите большую часть вашей конфигурации из файла main_project.pro в файл main_project.pri.
  • Используйте относительные пути относительно ваших файлов *.pri или *.pro, используя синтаксис $$PWD/path/to/file, где $$PWD — это расположение вашего файла *.pri или *.pro.
  • Включить *.pri файл, используя include($$PWD/main_project.pri)
  • Создайте проект test в папке main_project.
  • В test/test.pro добавьте строку include($$PWD/../main_project.pri), чтобы импортировать соответствующую конфигурацию из вашего main_project.

Я могу добавить больше деталей, если есть интерес.

Когда базовая настройка работает, это очень удобно, так как вы можете создать отдельный проект для каждого модуля, который хотите протестировать, а также глобальный test_suite, который запускает все остальные тесты. Если вы обнаружите, что многие тестовые проекты имеют общую конфигурацию, вы можете создать отдельный файл common.pri в test/common для включения во все свои тестовые проекты.

Как только это будет сделано, довольно легко сгенерировать небольшой скрипт для автоматического создания тестового проекта при тестировании нового модуля, что приведет к довольно эффективному рабочему процессу тестирования...

person AntonyG    schedule 17.07.2013