Англоязычное именование метода «Pairwise testing». Попарное тестирование – метод проектирования тестов, при котором тестируемые значения проверяемых параметров хотя бы раз сочетаются с тестируемыми значениями остальных проверяемых параметров.

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

Почему именно пары? Потому что на практике большинство дефектов в программах возникает именно из-за взаимодействия двух параметров. Например, приложение работает нормально с параметром A=1 и B=2 по отдельности, но возникают проблемы, когда A=1 и B=2 одновременно. Ошибки, которые требуют одновременного совпадения трёх или больше параметров, встречаются гораздо реже.

Рассмотрим процесс создания тестов с помощью данного метода. Для примера возьмём магазин, где можно купить обувь.

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

  • Цвет обуви: красный, синий, зелёный.
  • Размер обуви: маленький, средний.
  • Назначение обуви: повседневная, рабочая.

Выбираем два параметра, у которых имеется максимальное количество значений из имеющихся параметров. Первый параметр – цвет обуви, так как у него наибольшее количество значений. Второй параметр, следующий по количеству значений. В нашем случае остальные параметры имеют одинаковое количество значений, а значит можно взять любой из них. В итоге мы выбрали «цвет обуви» (3 значения) и «размер обуви» (2 значения).

Перемножаем число значений выбранных параметров 3 x 2 = 6 – это финальное количество строк таблицы попарного тестирования. Запомните это правило.

Создаём таблицу попарного тестирования:

Метод попарного тестирования Pairwise Testing

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

Метод попарного тестирования Pairwise Testing

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

Метод попарного тестирования Pairwise Testing
  • Строка № 1. Мы совместили (скрестили) «повседневная» с «красный» и «маленький». В следующих строках надо совместить с другими значениями.
  • Строка № 4. Мы совместили «повседневная» с «синий» и «средний». В следующих строках надо совместить с другими значениями.
  • Строка № 6. Мы совместили «повседневная» с «зелёный». Значение «средний» повторно совместили, однако на это уже не обращаем внимание.

В итоге «повседневный» удалось хотя бы раз совместить со всеми значениями других параметров. Заполняем «назначение обуви» значением «рабочая»:

Метод попарного тестирования Pairwise Testing
  • Строка № 2. Мы совместили «рабочая» с «красный» и «средний». В следующих строках надо совместить с другими значениями.
  • Строка № 3. Мы совместили «рабочая» с «синий» и «маленький». В следующих строках надо совместить с другими значениями.
  • Строка № 5. Мы совместили «рабочая» с «зелёный». Значение «маленький» повторно совместили, однако на это уже не обращаем внимание.

В итоге «рабочая» удалось хотя бы раз совместить со всеми значениями других параметров.

Таблица полностью заполнена. На основании таблицы составляются тесты построчно:

  • Тест № 1. Купить обувь. Цвет – красный. Размер – маленький. Назначение – повседневная.
  • Тест № 2. Купить обувь. Цвет – красный. Размер – средний. Назначение – рабочая.
  • Тест № 3. Купить обувь. Цвет – синий. Размер – маленький. Назначение – рабочая.
  • Тест № 4. Купить обувь. Цвет – синий. Размер – средний. Назначение – повседневная.
  • Тест № 5. Купить обувь. Цвет – зелёный. Размер – маленький. Назначение – рабочая.
  • Тест № 6. Купить обувь. Цвет – зелёный. Размер – средний. Назначение – повседневная.

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

Если вы хотите подробно узнать о других методах проектирования тестов, то прочтите книгу «Тестирование программного обеспечения. Основы», где мной подробно описан двадцать один метод проектирования тестов