Тестирование на основе ключевых слов - Keyword-driven testing

Тестирование на основе ключевых слов, также известный как тестирование на основе слов действия (не путать с тестирование на основе действий), это тестирование программного обеспечения методология подходит как для руководство и автоматизированное тестирование. Этот метод разделяет документацию контрольные примеры - включая данные и функциональные возможности для использования - из предписания способа выполнения тестовых примеров. В результате процесс создания теста разделяется на два отдельных этапа: этап проектирования и разработки и этап выполнения. Подэтап проектирования охватывает анализ требований оценка и анализ данных, определение и популяция.

Обзор

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

  • стартовое состояние тестируемой системы (SUT)
  • окно или меню, с которого нужно начать
  • клавиши или щелчки мыши, чтобы перейти в нужное окно ввода данных
  • имена полей для поиска и аргументы для ввода
  • действия, которые необходимо выполнить в случае появления дополнительных диалоговых окон (например, подтверждений)
  • кнопка, которую нужно нажать, чтобы отправить
  • утверждение о том, каким должно быть состояние SUT после завершения действий

В синтаксисе тестирования на основе ключевых слов перечислены тестовые примеры (слова данных и действия) в формате таблицы (см. Пример ниже). Первый столбец (столбец A) содержит ключевое слово Enter Client, которое представляет собой тестируемую функциональность. Затем оставшиеся столбцы B-E содержат данные, необходимые для выполнения ключевого слова: имя, адрес, почтовый индекс и город.

АBCDE
.ИмяАдресПочтовый индексГород
Введите клиентаДжейн Смит6 Хай СтритSE25 6EPЛондон

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

В нем вы можете создавать свои тестовые примеры:

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

Учитывая итеративный характер разработки программного обеспечения, дизайн теста обычно более абстрактный (менее конкретный), чем ручная реализация теста, но он может легко превратиться в один.

Преимущества

Тестирование на основе ключевых слов снижает чувствительность к техническому обслуживанию, вызванному изменениями в тестируемой системе / программном обеспечении (SUT). Если макеты экрана меняются или система переносится на другую ОС, вряд ли какие-либо изменения нужно будет вносить в тестовые примеры: изменения будут внесены в документацию по ключевым словам, один документ для каждого ключевого слова, независимо от того, сколько раз ключевое слово используется тестовые примеры, и это подразумевает глубокий процесс разработки тестов.

Кроме того, благодаря очень подробному описанию способа выполнения ключевого слова (в документации по ключевым словам) тест может выполнить практически любой. Таким образом, тестирование на основе ключевых слов можно использовать как для ручное тестирование и автоматизированное тестирование.[1]

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

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

Реализация отличается в каждом тестовом проекте. В одном проекте вы можете решить построить оба скрипты автоматизированного тестирования и скрипты ручного тестирования.[2] Напротив, разработка тестов - это итеративный процесс. Вы можете начать разработку тестов до реализации какой-либо системы, основывая дизайн теста на спецификациях вариантов использования, требованиях, прототипах и т. Д. По мере того, как система становится более четко определенной и у вас появляются сборки системы, с которыми можно работать, вы можете более подробно остановиться на деталях дизайна. Деятельность по разработке тестов отвечает на вопрос: «Как я собираюсь проводить тестирование?» Полный дизайн теста информирует читателей о том, какие действия необходимо предпринять с системой, и какое поведение и характеристики они должны ожидать, если система функционирует должным образом.

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

Методология

Методология тестирования на основе ключевых слов разделяет выполнение процесса тестирования на несколько этапов:

  1. Основа модели / прототипирование: анализ и оценка требований.
  2. Определение тестовой модели: по результатам оценки требований подходить к собственной программной модели.
  3. Определение тестовых данных: на основе определенной собственной модели, определение начального ключевого слова и основных / дополнительных данных.
  4. Подготовка к экзамену: основа вступительного теста и т. Д.
  5. Дизайн теста: анализ тестовой базы, дизайн тестового случая / процедуры, дизайн тестовых данных.
  6. Ручное выполнение тестов: ручное выполнение тестовых случаев с использованием документации по ключевым словам в качестве руководства по выполнению.
  7. Автоматизация выполнения теста: создание автоматизированного скрипта, выполняющего действия по ключевому слову документация.
  8. Автоматизированное выполнение тестов.

Определение

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

Тест является ключевым шагом в любом процессе разработки и должен применять серию тестов или проверок к объекту (тест системы / ПО - SUT). Всегда помня, что тест может показать только наличие ошибок, а не их отсутствие. В тесте системы RT недостаточно проверить, выдает ли ТУС правильные выходные данные. Он также должен удостовериться, что время, затраченное на получение этого результата, соответствует ожиданиям. Кроме того, синхронизация этих выходов также может зависеть от времени входов. В свою очередь, сроки будущих применимых входов определяются по выходным данным.[2]

Автоматизация выполнения теста

Этап реализации различается в зависимости от инструмента или фреймворка. Часто инженеры по автоматизации реализуют фреймворк, который содержит такие ключевые слова, как «проверка» и «ввод».[1] Тестировщики или разработчики тестов (которым не нужно знать, как программировать) пишут контрольные примеры на основе ключевых слов, определенных на этапе планирования, которые были реализованы инженерами. Тест выполняется с использованием драйвера, который считывает ключевые слова и выполняет соответствующий код.

В других методологиях используется этап реализации «все в одном». Вместо разделения задач разработки тестов и разработки тестов дизайн тестов является автоматизация тестирования. Ключевые слова, такие как «редактировать» или «проверить», создаются с помощью инструментов, в которых уже написан необходимый код. Это устраняет необходимость в дополнительных инженерах в процессе тестирования, поскольку реализация ключевых слов уже является частью инструмента. Примеры включают GUIdancer и QTP.

Плюсы

  • В долгосрочной перспективе обслуживание невелико:
    • Тестовые примеры лаконичны
    • Контрольные примеры доступны для чтения заинтересованным лицам
    • Тест-кейсы легко изменить
    • В новых тестовых примерах легче повторно использовать существующие ключевые слова.
  • Повторное использование ключевого слова в нескольких тестовых случаях
  • Не зависит от конкретного инструмента или языка программирования
  • Разделение труда
    • Для создания тестовых примеров требуется более сильная экспертиза в предметной области - меньшие навыки работы с инструментами / программированием
    • Внедрение ключевого слова требует более сильных навыков работы с инструментами / программирования - при относительно более низких навыках в предметной области
  • Абстракция слоев

Минусы

  • Дольше пора торговать (по сравнению с ручным тестированием или техникой записи и воспроизведения)
  • Умеренно высокая кривая обучения на начальном этапе

Смотрите также

Рекомендации

  1. ^ а б Faught, Дэнни Р. (ноябрь 2004 г.). "Тестирование на основе ключевых слов". Липкие умы. Разработка качества программного обеспечения. Получено 12 сентября, 2012.
  2. ^ а б Мандуррино, Хосе Л. (июль 2014 г.). «Gestione e Approccio alla validazione in sistemi RT (Real-Time)». УТИУ. Отсутствует или пусто | url = (помощь)

внешняя ссылка