Учебное пособие по платформе автоматизации кодированного тестирования пользовательского интерфейса

Типичная программная автоматизация Тестирование требуются инструменты автоматизации, такие как Selenium и QTP. Закодированный пользовательский интерфейс похож на эти инструменты и может быть особенно полезен для функциональных тестов.

Кодированное тестирование пользовательского интерфейса (CUIT) использует Visual Studio IDE для написания сценариев, поскольку запись можно выполнить с помощью Visual Studio.

Что такое кодированное тестирование пользовательского интерфейса?

Кодированный тест пользовательского интерфейса (CUIT) — это автоматизированный тест, который управляет приложениями через пользовательский интерфейс (UI). Отсюда и название «Кодированный тест пользовательского интерфейса» (CUIT). Этот тест включает в себя функциональное тестирование элементов управления пользовательского интерфейса. Он проверяет функциональность всего приложения, включая пользовательский интерфейс. Он также используется для автоматизации существующего ручного теста.

Закодированный тест пользовательского интерфейса

Пользовательский тест Archiтекстура

Возможности кодированного тестирования пользовательского интерфейса

Функции закодированного пользовательского интерфейса включают в себя

  • Функциональное тестирование
  • Генерировать код в VB/C#
  • Интегрировано с историей ALM
  • Сборка, развертывание и тестирование в лаборатории или в рамках сборки
  • Локальные, удаленные прогоны, сбор данных
  • Богатая расширяемость
  • Запись с учетом намерений и устойчивое воспроизведение

Поддерживаемые технологии кодированного тестирования пользовательского интерфейса (CUIT)

С помощью закодированного пользовательского интерфейса можно легко протестировать приложение, имеющее пользовательский интерфейс (UI). Приложение может быть как оконным, так и веб-интерфейсом.

Закодированный пользовательский интерфейс поддерживает такие технологии, как

  • Оконные настольные приложения
  • Веб-службы (SOAP, ASPX и т. д.)
  • Приложения для оконного телефона
  • WPF (Windows Презентация Foundation)
  • Веб-приложения (HTML, Silverlight, HTML5)

Зачем использовать закодированный пользовательский интерфейс для автоматизации тестирования

Причина, по которой предпочтителен закодированный пользовательский интерфейс для автоматизации тестирования

  • Разработчики и тестировщики программного обеспечения могут эффективно сотрудничать, используя одни и те же инструменты/язык.
  • Он поддерживает как Интернет, так и Windows проектов.
  • Механизм идентификации элементов — отличная функция Coded UI. Кроме того, он поддерживает синхронизацию
  • Механизм воспроизведения поддерживает такие функции, как «WaitForControlExist», «WaitForReadyLevel» и т. д.
  • С помощью «Агентов тестирования» автоматизированные тесты можно запускать на удаленных машинах.
  • Команды автоматизации могут разрабатывать сложные тесты, используя закодированный пользовательский интерфейс с многоуровневой структурой.
  • Тестировщики программного обеспечения могут эффективно фиксировать исключения и записывать результаты, используя log4net.dll.
  • Инструмент закодированного пользовательского интерфейса поддерживает описательное программирование. Это позволяет тестировщикам программного обеспечения автоматизировать сценарии на основе свойств объекта.
  • Он поддерживает элементы управления AJAX.

Как создавать кодированные тесты пользовательского интерфейса (CUIT)

Создать закодированные тесты пользовательского интерфейса можно следующими способами.

  • Создание на основе существующей записи действий (преобразование из тестовой записи вручную)
  • Создание нового закодированного теста пользовательского интерфейса с нуля
  • Написание кода с нуля

Содержание закодированного теста пользовательского интерфейса

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

Файл Контент Редактирование
UIMap.Designer.cs Раздел объявлений Свойства методов класса UIMap Нет
UIMap.cs Класс UIMap (частичный) Да
КодедUITest1.cs Свойства методов класса CodeUITest1 Да
UIMap.uitest XML-карта пользовательского интерфейса для теста. Редактируется только через редактор UI Map. Нет
  1. UIMap.Designer.cs : конструктор содержит представление кода UIMap. Он генерируется, когда тестер записывает какое-либо взаимодействие с пользовательским интерфейсом или когда некоторые объекты добавляются в UIMap вручную.
  2. UIMap.cs: любые изменения или настройки, внесенные в UIMap, сохраняются в этом файле. Первоначально этот файл будет пустым и может быть заполнен позже. Если изменения вносятся непосредственно в файл UIMap.designer.cs, убедитесь, что они не записаны, иначе все изменения будут потеряны.
  • КодедUITest1.cs: этот файл содержит закодированный класс тестирования пользовательского интерфейса, методы тестирования, вызов утверждения и вызов метода. Все утверждения и методы по умолчанию вызываются из этого файла.
  • UIMap.uitest: это XML-представление класса UIMap. Он включает в себя окна, элементы управления, свойства, методы, действия и утверждения. Редактируется только через редактор UI Map.

Далее в этом руководстве по кодированному пользовательскому интерфейсу мы узнаем, как выполнить автоматизированный тест кодированного пользовательского интерфейса.

Как выполнить закодированный тест пользовательского интерфейса

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

  1. Запись и воспроизведение кодированного пользовательского интерфейса или
  2. Кодированный пользовательский интерфейс. Ручное кодирование.

Для проведения тестирования закодированного пользовательского интерфейса необходимо выполнить следующие шаги:

  1. Создайте тестовый проект CodedUI.
  2. Добавьте закодированный тестовый файл пользовательского интерфейса.
  3. Запишите последовательность действий
  4. Проверьте значения в полях пользовательского интерфейса, таких как текстовые поля.
  5. Просмотр сгенерированного тестового кода
  6. Добавьте больше действий и утверждений
  7. Отредактируйте детали тестовых действий и утверждений.
  8. Запустить тест

лучшие практики кодированного тестирования пользовательского интерфейса (CUIT)

Вот несколько лучших практик для платформы автоматизации кодированного тестирования пользовательского интерфейса:

  • По возможности используйте построитель тестов для автоматизации закодированного пользовательского интерфейса.
  • Старайтесь не изменять файл UIMap.designer.cs напрямую. В противном случае изменения, внесенные вами в файл, будут перезаписаны.
  • Создайте свой тест как последовательность записанных методов.
  • Каждый записанный метод должен действовать на одной странице, форме или диалоговом окне. Также создайте новый метод тестирования для каждой новой формы, страницы или диалогового окна
  • При создании метода вместо имени по умолчанию используйте значимое имя метода. Значимое имя помогает определить цель метода.
  • Если возможно, ограничьте каждый записанный метод менее чем 10 действиями. Такой подход упрощает замену метода в случае изменения пользовательского интерфейса.
  • Чтобы создать утверждение, используйте построитель тестов CodedUI. Он автоматически добавляет метод утверждения в файл UIMap.Designer.cs.
  • Перезапишите методы тестирования/методы утверждения, если пользовательские интерфейсы изменятся или перезапишут затронутые разделы существующего метода тестирования.
  • Если вы пишете код напрямую с помощью API, используйте методы и свойства классов, созданных в файле UIMap.Designer.cs. Эти занятия сделают вашу работу более надежной и легкой, а также помогут повысить продуктивность.

Сравнение закодированных тестов пользовательского интерфейса и Selenium против QTP

Ниже приведена сравнительная таблица кодированного пользовательского интерфейса и интерфейсов. Selenium Против QTP:

  • Selenium не поддерживает ни WPF, ни Windows Приложения
  • Visual Studio CodedUI поддерживает тестирование приложений Windows Store, а также тестирование приложений Windows Phone. Никакие другие инструменты не поддерживают это.
  • Тест завершен поддерживает оконное приложение, но требует установки плагина.

Кодированный тест пользовательского интерфейса против Selenium против QTP

Сравнение закодированных тестов пользовательского интерфейса и Selenium против QTP

Резюме:

  • Автоматизированные тесты, которые управляют вашим приложением через его пользовательский интерфейс (UI), известны как тесты CodedUI (CUIT).
  • Платформа автоматизации кодированного тестирования пользовательского интерфейса поддерживает такие технологии, как веб-службы, приложения Windows Phone, веб-приложения и т. д.
  • Кодированное тестирование пользовательского интерфейса позволяет разработчикам и Тестировщики программного обеспечения эффективно сотрудничать, используя одни и те же инструменты/язык
  • Содержимое или файл, созданный при использовании CodedUI, включает в себя
  • UIMap.Designer.cs
  • UIMap.cs
  • КодедUITest1.cs
  • UIMap.uitest

Подведем итог этой публикации следующим образом: