Automated UI Regression testing? How?
От: andrey.nikulin Великобритания  
Дата: 20.05.11 09:12
Оценка:
Привет всем,

Просвятите как в настоящий момень проводиться regression testing of UI. Какие инструменты, frameworks нужно использовать? Можно ли автоматизировать вообще?

Исходные данные: есть WinForms приложение, несколько grids на форме. Данные подкачиваются с сервера и отображаются в гриде. Есть некая логика КАК отображать данные, разные цвета и т.д. Есть несколько calculated fields.
В настоящий момент тестируется просто в ручную по написанным в Excel test cases. Типа проверяем правильным ли цветом подсвечено значение и каком результат получился в calculated field.

Главный вопрос: Можно ли автоматизировать вообще?

Спасибо.
automated ui regression testing тестирование
Re: Automated UI Regression testing? How?
От: dorofeevilya Россия  
Дата: 20.05.11 09:55
Оценка: :)
Здравствуйте, andrey.nikulin, Вы писали:

AN>Привет всем,


AN>Просвятите как в настоящий момень проводиться regression testing of UI. Какие инструменты, frameworks нужно использовать? Можно ли автоматизировать вообще?


AN>Исходные данные: есть WinForms приложение, несколько grids на форме. Данные подкачиваются с сервера и отображаются в гриде. Есть некая логика КАК отображать данные, разные цвета и т.д. Есть несколько calculated fields.

AN>В настоящий момент тестируется просто в ручную по написанным в Excel test cases. Типа проверяем правильным ли цветом подсвечено значение и каком результат получился в calculated field.

AN>Главный вопрос: Можно ли автоматизировать вообще?


AN>Спасибо.


Можно использовать обычный фреймворк для юнит-тестов. MSTest, напр., или Nunit. Естественно, форма должна быть пригодной для тестирования. Всю самописную логику (ту, которую winforms не предоставляет из коробки) необходимо удалить в отдельный класс, представляющий модель формы (view model). Эта самая view model должна отражать семантику работы с формой: свойства предоставляют значения, которые определенным образом трактуются формой при ее отображении, методы являются обработчиками действий пользователя. Теперь эта логика не связана непосредственно с формой, и ее можно тестировать как обычный класс. Форма же связывается с такой view model с помощью байндингов (это как раз то, что winforms предоставляет из коробки) для свойств и обработчиков событий от элементов формы — для методов. Таким образом можно писать юнит-тесты для формы, не завися от модели, и проверять в них то, как форма реагирует на изменения свойств view model, как изменяются свойства view model при изменении соотв. элементов формы, что правильно вызываются методы view model.
Форма в юнит-тестах запускается как обычно с помощью Application.Run(). Для работы с элементами формы сделайте в дизайнере их internal (чтобы из кода тестов можно было к ним обращаться). Не забывайте про SynchronizationContext.
Re[2]: Automated UI Regression testing? How?
От: MasterZiv СССР  
Дата: 25.05.11 05:34
Оценка:
On 20.05.2011 13:55, dorofeevilya wrote:

> Можно использовать обычный фреймворк для юнит-тестов. MSTest, напр., или Nunit.

> Естественно, форма должна быть пригодной для тестирования. Всю самописную логику
> (ту, которую winforms не предоставляет из коробки) необходимо удалить в
> отдельный класс, представляющий модель формы (view model). Эта самая view model
> должна отражать семантику работы с формой: свойства предоставляют значения,
> которые определенным образом трактуются формой при ее отображении, методы
> являются обработчиками действий пользователя. Теперь эта логика не связана
> непосредственно с формой, и ее можно тестировать как обычный класс. Форма же
> связывается с такой view model с помощью байндингов (это как раз то, что
> winforms предоставляет из коробки) для свойств и обработчиков событий от

Извини, но если ты будеш каждоую вшивую форму так проектировать, то
самая большая сложность формы будет именно в поддержке тестирования.
Неприемлимо.
Posted via RSDN NNTP Server 2.1 beta
Re[3]: Automated UI Regression testing? How?
От: dorofeevilya Россия  
Дата: 25.05.11 06:56
Оценка:
Здравствуйте, MasterZiv, Вы писали:

MZ>On 20.05.2011 13:55, dorofeevilya wrote:


MZ>Извини, но если ты будеш каждоую вшивую форму так проектировать, то

MZ>самая большая сложность формы будет именно в поддержке тестирования.
MZ>Неприемлимо.

Это утверждение можно распространить на любой класс, который подвергается юнит-тестированию. Возникает вопрос, нужно ли юнит-тестирование вообще?
Re[4]: Automated UI Regression testing? How?
От: MasterZiv СССР  
Дата: 25.05.11 12:53
Оценка: +1
On 25.05.2011 10:56, dorofeevilya wrote:
> Это утверждение можно распространить на любой класс, который подвергается
> юнит-тестированию. Возникает вопрос, нужно ли юнит-тестирование вообще?

Форм ? не нужно. Нужно функциональное тестирование форм. IMHO.
Posted via RSDN NNTP Server 2.1 beta
Re[5]: Automated UI Regression testing? How?
От: dorofeevilya Россия  
Дата: 25.05.11 13:07
Оценка:
Здравствуйте, MasterZiv, Вы писали:

MZ>Форм ? не нужно. Нужно функциональное тестирование форм. IMHO.


Я исхожу из того, что форма — такой же класс. Так почему же не покрыть его юнит-тестами?
А что такое функциональное тестирование?
Re[6]: Automated UI Regression testing? How?
От: MasterZiv СССР  
Дата: 07.06.11 12:14
Оценка:
On 25.05.2011 17:07, dorofeevilya wrote:

> Я исхожу из того, что форма — такой же класс. Так почему же не покрыть его

> юнит-тестами?

Не всё, что тесты, юниттесты.
И не всё классы, что объявлено классами.

В общем формы являются классами только лишь чисто формально
с точки зрения языка реализации. ООП там применимо очень условно,
и код их должен быть тупой и дебильный.

> А что такое функциональное тестирование?


Ты знаешь, объяснять-то долго...
Posted via RSDN NNTP Server 2.1 beta
Re[7]: Automated UI Regression testing? How?
От: dorofeevilya Россия  
Дата: 07.06.11 12:33
Оценка:
Здравствуйте, MasterZiv, Вы писали:

MZ>On 25.05.2011 17:07, dorofeevilya wrote:


>> Я исхожу из того, что форма — такой же класс. Так почему же не покрыть его

>> юнит-тестами?

MZ>Не всё, что тесты, юниттесты.

Ты о чем? О зависимости от windowing system?

MZ>И не всё классы, что объявлено классами.


MZ>В общем формы являются классами только лишь чисто формально

MZ>с точки зрения языка реализации. ООП там применимо очень условно,


MZ>и код их должен быть тупой и дебильный.

Должен-то должен, но этот тупой и дебильный код реализует тучу логики отображения (особенно если форма непростая). С помощью юнит-тестов я могу сымитировать все возможные ситуации и протестировать их отдельно от всего остального.

>> А что такое функциональное тестирование?


MZ>Ты знаешь, объяснять-то долго...

Я правильно понял, что ты имеешь ввиду полностью развернуть приложение и каким-нить тест-комплитом кнопки потыкать?
Если нет, то я не знаю...
Re: Automated UI Regression testing? How?
От: okman Беларусь https://searchinform.ru/
Дата: 07.06.11 14:19
Оценка: +1
Здравствуйте, andrey.nikulin, Вы писали:

AN>Привет всем,


AN>Просвятите как в настоящий момень проводиться regression testing of UI. Какие инструменты, frameworks нужно использовать? Можно ли автоматизировать вообще?


AN>Исходные данные: есть WinForms приложение, несколько grids на форме. Данные подкачиваются с сервера и отображаются в гриде. Есть некая логика КАК отображать данные, разные цвета и т.д. Есть несколько calculated fields.

AN>В настоящий момент тестируется просто в ручную по написанным в Excel test cases. Типа проверяем правильным ли цветом подсвечено значение и каком результат получился в calculated field.

AN>Главный вопрос: Можно ли автоматизировать вообще?


AN>Спасибо.


А инструменты соответствующие пробовали ?
AutomatedQA TestComplete, к примеру, снимает подобные вопросы...
Re: Automated UI Regression testing? How?
От: bnk СССР http://unmanagedvisio.com/
Дата: 07.06.11 14:24
Оценка:
Здравствуйте, andrey.nikulin, Вы писали:

AN>Просвятите как в настоящий момень проводиться regression testing of UI. Какие инструменты, frameworks нужно использовать? Можно ли автоматизировать вообще?

AN>Исходные данные: есть WinForms приложение, несколько grids на форме. Данные подкачиваются с сервера и отображаются в гриде. Есть некая логика КАК отображать данные, разные цвета и т.д. Есть несколько calculated fields.
AN>В настоящий момент тестируется просто в ручную по написанным в Excel test cases. Типа проверяем правильным ли цветом подсвечено значение и каком результат получился в calculated field.
AN>Главный вопрос: Можно ли автоматизировать вообще?

+1 за TestComplete
Дешево и сердито. Скачай да попробуй.
Re[2]: Automated UI Regression testing? How?
От: bnk СССР http://unmanagedvisio.com/
Дата: 07.06.11 14:33
Оценка:
Здравствуйте, bnk, Вы писали:

bnk>+1 за TestComplete

bnk>Дешево и сердито. Скачай да попробуй.

Только вот оказывается оно уже не AutomatedQA (их купили?), и уже блин не так дешево — несколько лет назад оно 300 баксов стоило, если мне не изменяет память
Re[3]: Automated UI Regression testing? How?
От: falntss  
Дата: 29.08.11 15:05
Оценка:
Здравствуйте, bnk, Вы писали:

bnk>Здравствуйте, bnk, Вы писали:


bnk>>+1 за TestComplete

bnk>>Дешево и сердито. Скачай да попробуй.

bnk>Только вот оказывается оно уже не AutomatedQA (их купили?)


AFAIK ребрендинг.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.