2012-01-16 7 views
2

Я новичок в Qt и модульном тестировании. Я просмотрел документацию и пример модульного тестирования, но я не мог понять, как использовать тестовый сценарий в приложении.Qt Unit Testing

Для примера. В документации создается QLineEdit, а затем значение проверяется с определенным значением.

void testGUI() 
{ 
    QLineEdit lineEdit; 
    QTest::keyClicks(&lineEdit, "Hello"); 
    QCOMPARE(lineEdit.text(),QString("Hello")); 
} 

Когда я запускаю программу, весь результат отображается в консоли.

Но как я могу проверить, есть ли у меня QLineEdit и QPushButton в форме QMainWindow.

Как сделать тестирование GUI?

+0

Вы просмотрели: http://www.froglogic.com/squish/gui-testing/ – Atifm

ответ

2

Вы, похоже, изучаете модульное тестирование GUI.

Здесь вы идете: How can I unit test a GUI?

+0

Я просмотрел документацию «Смиренное диалоговое окно». Я также просмотрел документацию, предоставленную в книге «Основы Qt», а также учебник Харальда Ферненеля. Но я смущен тем, как использовать модульную привязку в рамках qt на виджетах или в графическом приложении. Предположим, что у меня есть QLineEdit, и я хочу проверить во время выполнения, что количество слов составляет от 3 до 15. Как проверить несколько тестовых данных? – SAM

0

Модульное тестирование, как правило, не включает в себя пользовательский интерфейс. Тестирование модулей должно быть низким уровнем, тестирование каждого устройства (класс/компонент). Затем тестирование интеграции тестирует модули, которые работают вместе, чтобы что-то выполнить. Иногда макет объектов используется здесь, чтобы выступать в качестве стойки для других компонентов, поэтому убедитесь, что поведение - это то, что вы ожидаете.

После тестирования модулей и тестирования интеграции тестирование UI должно быть довольно прочным. Для проекта Qt кросс-платформенная платформа тестирования gui из froglogic под названием squish может быть вашим лучшим выбором. Однако это платный продукт, и если вам не нужен его кросс-платформенный характер, вы можете избавиться от некоторых бесплатных инструментов. Большинство из них приходят к выполнению вашего приложения под какой-то инструментальной установкой, а затем воспроизводят ваши взаимодействия с пользовательским интерфейсом и проверяют значения текстовых полей и т. Д.

В любом случае, я считаю, что XCode и Visual Studio предоставляют некоторые базовые модули UI-тестирования инструменты. Их также является статьей here википедии.