Платформа автоматизации тестирования: что это такое, 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 также известен как «Структурированный сценарий» или «Функциональная декомпозиция».
- В среде тестирования на основе данных логика тестовых сценариев находится в тестовых сценариях, а тестовые данные отделяются и хранятся вне тестовых сценариев.
- Платформа на основе ключевых слов или таблиц требует разработки таблиц данных и ключевых слов независимо от инструмента автоматизации тестирования, используемого для их выполнения.
- Гибридная платформа автоматизации — это то, во что большинство сред автоматизации тестирования развиваются с течением времени и в рамках нескольких проектов.