Платформа автоматизации тестирования: что это такое, Archiтектура и типы

Что такое Framework в автоматическом тестировании?

A Фреймворк автоматизации тестирования представляет собой набор руководящих принципов, таких как стандарты кодирования, обработка тестовых данных, обработка репозитория объектов и т. д., соблюдение которых при написании сценариев автоматизации приводит к полезным результатам, таким как увеличение повторного использования кода, более высокая переносимость, снижение затрат на обслуживание сценариев и т. д. Это всего лишь рекомендации, а не правила; они не являются обязательными, и вы все равно можете писать сценарии, не следуя рекомендациям. Но вы упустите преимущества наличия Framework.

Зачем вам нужен фреймворк?

Давайте рассмотрим пример, чтобы понять, зачем вам нужен Framework.

Я уверен, что вы посещали семинар/лекцию/конференцию, где участников просили соблюдать следующие правила:

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

Как вы думаете, вы можете провести семинар? БЕЗ соблюдая эти правила👍

Ответ большой ДА! Конечно, вы можете провести семинар/лекцию/конференцию/демонстрацию и без приведенных выше рекомендаций.. на самом деле, некоторые из нас не будут следовать им, даже если они там изложены!

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

На основании вышеизложенного, А. Рамочную программу можно определить как набор руководящих принципов, соблюдение которых дает положительные результаты.

Типы фреймворков автоматизации тестирования

Ниже приведены различные типы сред автоматизированного тестирования:

  • 1) Линейное скриптование
  • 2) Тестовая библиотека Archiтектурный каркас.
  • 3) Управление данными Тестирование Фреймворк.
  • 4) Платформа тестирования на основе ключевых слов или таблиц.
  • 5) Платформа автоматизации гибридного тестирования.

Давайте рассмотрим их подробно –

1) Линейный сценарий – запись и воспроизведение

Это самая простая из всех платформ автоматизации тестирования, известная также как «Запись и воспроизведение». В этом Автоматизация тестирования Framework, тестер вручную записывает каждый шаг (навигация и ввод пользователя), вставляет контрольные точки (этапы проверки) в первом раунде. Затем он воспроизводит записанный сценарий в последующих раундах.

Пример: Рассмотрите возможность входа в систему Приложение для бронирования авиабилетов и проверка того, загрузилось ли приложение при успешном входе в систему. Здесь тестер просто запишет шаги и добавит шаги проверки.

SystemUtil.Run "flight4a.exe","","","open"
Dialog("Login").WinEdit("Agent Name:").Set "Guru99"
Dialog("Login").WinEdit("Password:").Set "Mercury"
Dialog("Login").WinButton("OK").Click
'Check Flight Reservation Window has loaded after successful log-on
Window("Flight Reservation").Check CheckPoint("Flight Reservation")

Наши преимущества

  • Самый быстрый способ создать скрипт
  • Опыт автоматизации не требуется
  • Самый простой способ изучить возможности Инструмента тестирования.

Недостатки бонуса без депозита

  • Небольшое повторное использование скриптов
  • Тестовые данные жестко запрограммированы в скрипте.
  • Кошмар обслуживания

2) Тестовая библиотека Archiструктура структуры

Он также известен как «Структурированный сценарий» or «Функциональная декомпозиция».

В этой среде автоматизированного тестирования тестовые сценарии изначально записываются «Запись и воспроизведениеМетод. Laterобщие задачи внутри сценариев идентифицируются и группируются в Функции. Эти функции вызываются основным тестовым скриптом под названием Драйвер различными способами для создания тестовых случаев.

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

Function Login()
SystemUtil.Run "flight4a.exe","","","open"
Dialog("Login").WinEdit("Agent Name:").Set "Guru99"
Dialog("Login").WinEdit("Password:").Set "Mercury"
Dialog("Login").WinButton("OK").Click
End Function

Теперь вы вызовете эту функцию в основном скрипте следующим образом:

Call Login()
---------------------------
Other Function calls / Test Steps.
---------------------------

Наши преимущества

  • Более высокий уровень повторного использования кода достигается в структурированном сценарии по сравнению с «записью и воспроизведением».
  • Разработка сценариев автоматизации обходится дешевле из-за более частого повторного использования кода.
  • Упрощенное обслуживание скриптов

Недостатки бонуса без депозита

  • Для написания сценариев с использованием Test Library Framework необходимы технические знания.
  • Требуется больше времени для планирования и подготовки сценариев тестирования.
  • Тестовые данные жестко закодированы в сценариях.

3) Платформа тестирования, управляемого данными

В этой структуре, хотя Тестовый кейс логика находится в тестовых сценариях, тестовые данные отделяются и хранятся вне тестовых сценариев. Тестовые данные считываются из внешних файлов (файлов Excel, текстовых файлов, файлов CSV, источников ODBC, объектов DAO, объектов ADO) и загружаются в переменные внутри тестового сценария. Переменные используются как для входных значений, так и для проверочных значений. Сами тестовые сценарии готовятся либо с использованием линейного сценария, либо с использованием платформы тестовой библиотеки.

Пример: Разработка сценария входа в систему бронирования авиабилетов с использованием этого метода будет включать два этапа.

Шаг 1) Создайте файл Test – Data, который может быть Excel, CSV или любым другим источником базы данных.

Имя агента Пароль
Джимми Mercury
Тина MERCURY
Bill Меркурий

Шаг 2) Разработайте тестовый сценарий и сделайте ссылки на источник тестовых данных.

SystemUtil.Run "flight4a.exe","","","open"
Dialog("Login").WinEdit("Agent Name:").Set DataTable("AgentName", dtGlobalSheet)
Dialog("Login").WinEdit("Password:").Set DataTable("Password", dtGlobalSheet)
Dialog("Login").WinButton("OK").Click
'Check Flight Reservation Window has loaded
Window("Flight Reservation").Check CheckPoint("Flight Reservation")
**Note "dtGlobalSheet" is the default excel sheet provided by QTP.

Наши преимущества

  • Изменения в тестовых сценариях не влияют на тестовые данные.
  • Тестовые случаи могут выполняться с несколькими наборами данных.
  • Различные тестовые сценарии могут быть выполнены путем простого изменения тестовых данных во внешнем файле данных.

Недостатки бонуса без депозита

  • Требуется больше времени для планирования и подготовки тестовых сценариев и тестовых данных.

4) Платформа тестирования на основе ключевых слов или таблиц

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

Существует 3 основных компонента Keyword Driven Framework, а именно. Ключевое слово, Карта применения, Функция компонента.

Что такое ключевое слово?

Ключевое слово — это действие, которое можно выполнить над компонентом графического интерфейса. Бывший. Для текстового поля компонента графического интерфейса некоторыми ключевыми словами (действием) могут быть InputText, VerifyValue, VerifyProperty и т. д.

Что такое карта приложений?

Карта приложения предоставляет именованные ссылки для компонентов графического интерфейса. Карты приложений — это не что иное, как «Репозиторий объектов

Что такое функция компонента?

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

Пример: Чтобы понять, как работает режим ключевых слов, давайте возьмем тот же пример. Это включает в себя 2 шага

Шаг 1: Создание таблицы данных (отличается от таблицы тестовых данных, созданной в Data Driven Framework). Эта таблица данных содержит действия, которые необходимо выполнить над объектами графического интерфейса, и соответствующие аргументы, если таковые имеются. Каждая строка представляет один этап тестирования.

объект Экшн
(Приложение КАРТА) (КЛЮЧЕВЫЕ СЛОВА) Аргумент
WinEdit (имя агента) Поставьте Guru99
WinEdit (пароль) Поставьте Mercury
WinButton(ОК) Нажмите
Окно (бронирование рейса) проверить Существует


Шаг 2: Написание кода в виде функций компонентов.

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

Function main()
{
  Call ConnectTable(Name of the Table) { //Calling Function for connecting to the table.
    while (Call TableParser() != -1) //Calling function for Parsing and extracting values from the table.
    {
      Pass values to appropriate COMPONENT functions.Like Set(Object Name, Argument) ex.Set(Agent Name, Guru99).
    }
  }
  Call CloseConnection() //Function for Closing connection after all the operation has been performed.
} //End of main

Это все, что касается Keyword Driven Framework.

Преимущество Keyword Driven Framework заключается в том, что ключевые слова можно использовать повторно. Чтобы понять это, представьте, что вы хотите проверить операцию входа на веб-сайт, например YAHOO MAIL. Таблица будет выглядеть так:

объект Экшн
(КАРТА ПРИМЕНЕНИЯ) (КЛЮЧЕВОЕ СЛОВО) Аргумент
WebEdit (Имя пользователя) Поставьте abc@yahoo.com
Вебредактирование (пароль) Поставьте ххххх
Веб-кнопка (ОК) Нажмите
Окно (Yahoo Mail) проверить Грузы

Если вы заметите, что в этом случае Ключевые слова Set , Click , Verify остаются прежними, для которых уже разработаны соответствующие функции компонента. Все, что вам нужно сделать, это изменить сопоставление приложений (репозиторий объектов) с более раннего бронирования рейса на Yahoo. Mail , при изменении значений аргументов и тот же скрипт будет работать!

Наши преимущества

  • Обеспечивает высокую возможность повторного использования кода.
  • Независимый инструмент тестирования
  • Независимо от тестируемого приложения, тот же сценарий работает и для AUT (с некоторыми ограничениями).
  • Тесты могут быть разработаны с AUT или без него.

Недостатки бонуса без депозита

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

ПРИМЕЧАНИЕ: Несмотря на то, что Micro Focus UFT позиционирует себя как KeyWord Driven Framework, с помощью HP UFT невозможно добиться полной независимости от инструментов тестирования и приложений.

5) Платформа автоматизации гибридного тестирования

Как следует из названия, эта платформа представляет собой комбинацию одной или нескольких платформ автоматизации, рассмотренных выше, которые используют их сильные стороны и пытаются смягчить их слабые стороны. Гибридная среда автоматизации тестирования QA — это то, во что большинство сред автоматизации тестирования развиваются с течением времени и в рамках нескольких проектов. Компания Maximum Industry использует Keyword Framework в сочетании с методом функциональной декомпозиции.

PS: Другие платформы автоматизации, заслуживающие упоминания:

Тестовая модульность фреймворка

В этой структуре общие задачи в тестовом сценарии сгруппированы в модули.

Пример: Использование действий в QTP позволяет создавать модульные сценарии.

Пример сценария входа в систему

SystemUtil.Run "flight4a.exe","","","open"
Dialog("Login").WinEdit("Agent Name:").Set "Guru99"
Dialog("Login").WinEdit("Password:").Set "Mercury"
Dialog("Login").WinButton("OK").Click
'End of Script

Теперь вы можете вызвать это действие в основном скрипте следующим образом:

RunAction ("Login[Argument]", oneIteration)

Тестирование бизнес-процессов (BPT)

Эти платформы автоматизации разбивают крупные бизнес-процессы на компоненты, которые можно повторно использовать несколько раз в одних и тех же или разных тестовых сценариях. Например, бизнес-процесс бронирования рейса разделен на такие компоненты, как вход в систему, поиск рейсов, бронирование, оплата и выход, которые можно повторно использовать в одном и том же бизнес-процессе или в разных процессах. Кроме того, BPT способствует более тесной координации между малыми и средними предприятиями и инженерами по автоматизации.

Преимущества платформы автоматизации тестирования Archiтекстура

Ниже приведены преимущества архитектуры платформы автоматизации тестирования:

  • Система автоматизации тестирования помогает снизить риски и затраты.
  • Повышает эффективность тестов
  • Это помогает снизить затраты на техническое обслуживание
  • Позволяет повторно использовать код
  • Это позволяет добиться максимального покрытия тестами
  • Это максимизирует функциональность приложения.
  • Помогает уменьшить дублирование тестовых примеров.
  • Это помогает повысить эффективность и производительность тестирования за счет автоматизации тестирования.

Резюме

  • Фреймворк — это набор руководящих принципов, таких как стандарты кодирования, обработка тестовых данных, обработка репозитория объектов и т. д., соблюдение которых при написании сценариев автоматизации приводит к полезным результатам, таким как увеличение повторного использования кода, более высокая переносимость, снижение затрат на обслуживание сценариев и т. д.
  • Линейные сценарии — это самая простая из всех платформ автоматизации, также известная как «Запись и воспроизведение».
  • Тестовая библиотека Architecture Framework также известен как «Структурированный сценарий» или «Функциональная декомпозиция».
  • В среде тестирования на основе данных логика тестовых сценариев находится в тестовых сценариях, а тестовые данные отделяются и хранятся вне тестовых сценариев.
  • Платформа на основе ключевых слов или таблиц требует разработки таблиц данных и ключевых слов независимо от инструмента автоматизации тестирования, используемого для их выполнения.
  • Гибридная платформа автоматизации — это то, во что большинство сред автоматизации тестирования развиваются с течением времени и в рамках нескольких проектов.