Можно ли представить закодированные вручную функции как общие шаги?

Мы изучаем закодированный пользовательский интерфейс, и, поскольку у нас есть опыт программирования на C#, мы будем сами кодировать автоматические тесты.

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

Это отличный способ для программистов C# показать, что они делают, тестировщикам, не занимающимся кодированием, которые будут взаимодействовать с этими автоматическими тестами с помощью MTM (менеджер тестов Microsoft).

Однако было бы здорово, если бы программисты C# могли создавать общие функции как «общие шаги», и таким образом не технические тестировщики могли бы собирать новые тесты в MTM, используя эти строительные блоки.

Такие функции, как: открыть диалоговое окно настроек, развернуть окно, добавить элемент (с параметрами), закрыть все открытые вкладки и т. д.

Однако это будут закодированные функции, а не записи.

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

Я также должен подчеркнуть, что эти функции будут полностью автоматизированы, поэтому новые тесты, собранные в MTM, также должны быть полностью автоматизированы без необходимости открывать Visual Studio.

Это вообще возможно?


person JL.    schedule 19.05.2014    source источник
comment
Мы пытались найти способ сделать это и на моей работе. Из того, что я обнаружил, общие шаги, доступные в MTM, недоступны из класса проекта С#, и наоборот.   -  person Ryan Cox    schedule 20.05.2014


Ответы (2)


Подход, используемый некоторыми людьми, заключается в создании тестовой среды, содержащей множество полезных функций. Затем сам тест записывается как управляемый данными тест закодированного пользовательского интерфейса, каждый шаг которого представляет собой одну запись из источника данных. (Обычно каждый шаг может быть одной строкой в ​​файле CSV.) Некоторые столбцы источника данных будут командами, а другие — данными для этих команд.

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

Команды могут быть для действий более высокого уровня в ваших приложениях, таких как: вход в систему, заполнение формы.

Фреймворки могут позволить непрограммистам писать тесты, используя понятную им терминологию. Фреймворки писать сложно.

person AdrianHHH    schedule 07.08.2014

Это на самом деле невозможно так, как вы спрашиваете - вы не сможете заставить своих нетехнических тестировщиков создавать автоматические тесты из менеджера тестирования. Закодированный тест пользовательского интерфейса всегда должен существовать как тест в файле кода.

Все подробности для теста менеджера тестирования доступны через API TFS, поэтому я полагаю, что должна быть возможность создать свой собственный слой, который мог бы генерировать закодированный код пользовательского интерфейса на основе системы отображения общих шагов, но это было бы довольно серьезное мероприятие. - вероятно, проще иметь автоматизированные тесты, созданные техническими людьми.

person Chris Surfleet    schedule 07.08.2014