Название: Тестирование UI компонентов (РЕШЕНО) Отправлено: nvek от Март 02, 2017, 11:44 Вообщем как тестировать, если они в закрыты в приват?
сделать паблик? Код: //private: есть идея просто тыкать вначале Два таба, чтобы курсор перешол на поле, дальше еще таб, еще интер..... как вы делаете? Название: Re: Тестирование UI компонентов Отправлено: Пантер от Март 02, 2017, 11:49 Код
Название: Re: Тестирование UI компонентов Отправлено: nvek от Март 02, 2017, 12:04 почему то кажется, что так тоже делать нельзя
Название: Re: Тестирование UI компонентов Отправлено: Пантер от Март 02, 2017, 12:13 Можно еще тест френдом делать. А можно методом Павлика Морозова:
Код
Название: Re: Тестирование UI компонентов Отправлено: nvek от Март 02, 2017, 12:25 а можно поподробнее?
вот например тест, который заполняет комбобоксы и жмякает ентер. Код: void ConnectedFormTests::test_ConnectionFormConnect() несложно заменить Название: Re: Тестирование UI компонентов Отправлено: nvek от Март 02, 2017, 12:33 class ConnectedForm; //дружественный класс
class ConnectedFormTests : public QObject { Q_OBJECT private slots: /// public: friend ConnectedForm; Код: void ConnectedFormTests::test_ConnectionFormConnect() Название: Re: Тестирование UI компонентов Отправлено: Пантер от Март 02, 2017, 12:41 ConnectedFormTests надо врендом делать.
Название: Re: Тестирование UI компонентов Отправлено: nvek от Март 02, 2017, 12:42 я думаю, что можно как то к objectName обратиться
Название: Re: Тестирование UI компонентов Отправлено: nvek от Март 02, 2017, 13:50 Допустим если это не ui компонент, и все создано без дизайнера, и все компоненты в привате.
как к ним обратиться чтобы тестировать? Название: Re: Тестирование UI компонентов Отправлено: Пантер от Март 02, 2017, 13:59 1. Как я уже выше написал - сделать пабликов для тестов.
2. Проставить всем objectName и искать через findChild у QWidget Название: Re: Тестирование UI компонентов Отправлено: vipet от Март 03, 2017, 00:48 Имхо, для тестов нужно посылать события кликов мыши и нажатия клавиш окну. Т.е. эмулировать то, что делает пользователь.
P.S. UI сделан в дизайнере или в С++ коде, private/public - это все неважно. Название: Re: Тестирование UI компонентов Отправлено: lit-uriy от Март 03, 2017, 06:25 nvek, в твоём примере ConnectedForm-у разрешается доступ к ConnectedFormTests-у, а не наоборот.
Т.е. если в неком классе А в качестве друга ты указал класс Б, это означает, что Б теперь имеет доступ к членам класса А. Название: Re: Тестирование UI компонентов Отправлено: nvek от Март 06, 2017, 10:23 уи в привате, все как надо.
вот как у меня получилось: Код: QFETCH(QString, id); |