вторник, 27 августа 2013 г.

Обходные пути в автоматизации тестирования при работе с TFS.

       Привет, мой дорогой читатель. Вот очередная история из моего мира автоматизации тестирования.
       На автоконфетке весной 2012 года Дмитрий Жарий выступал с докладом об обходных путях в автоматизации тестирования. Я пыталась найти видео доклада в его блоге, не нашла. Дима, если ты читаешь это, то может дашь ссылочку людям, очень хороший доклад :)
Так вот, о чем это я. Очень мне тогда понравилась эта идея. Вот как я ее вижу.
       У нас на проекте есть определенное количество багов (о которых мы знаем), из-за которых падают автотесты. Причем баги эти в ближайшее время фикситься не будут. Учитывая, что в UI автотестах часто бывает не 1, а гораздо больше проверок, то те проверки, которые идут после падающей, уже не выполняются. Еще один минус состоит в том, что проверяя результаты запуска UI тестов каждый день , ты уже не концентрируешь внимание на этих падающих тестах - они же всегда падают. А эти тесты могут упасть уже по другой причине, которую ты не заметишь. Но основная идея для меня заключается в том, что тесты служат для нахождения новых багов, а не подтверждения существования уже известных. Для решения перечисленных проблем и служит обходной путь в автоматизации тестирования. Все, что нам нужно - это проверять в конкретном тесте, пофикшен баг или нет. Если не пофикшен, то мы можем пропустить эту проверку. Если пофикшен - то выполнить (либо таким же образом определять ожидаемый результат, а не факт выполнения проверки). Таким образом, тесты у нас всегда будут зелеными. А если станут красными - значит мы поймали какой-то новый баг.
      Поскольку я работаю с TFS, моя задача определения состояния бага значительно облегчается.
1 шаг - подключим в проект необходимые сборки



2 шаг - создадим класс со статическим методом, который проверяет состояние бага:


3 шаг - используем этот метод в тесте, например, так:

Таким образом, когда баг пофиксят, вам ничего не придется менять в тестах, потому что автоматически подхватится корректное значение для проверки.
А вообще конечно, лучше бы тесты всегда были зелененькими, потому что багов нет :)) Эх, мечты, мечты :)

вторник, 6 августа 2013 г.

Генерация C# тестов для Windows приложений при помощи Coded UI

Все привет! Делюсь с вами записью моего выступления на автоконфетке 2013, где я рассказывала, как использовать Coded UI для генерации тестов.