36

Метод всех пар, или как не убиться тестируя комбинации

  • Upload
    sqalab

  • View
    3.116

  • Download
    5

Embed Size (px)

DESCRIPTION

Доклад Барановского Александра на SQA Days 7

Citation preview

Page 1: Метод всех пар, или как не убиться тестируя комбинации
Page 2: Метод всех пар, или как не убиться тестируя комбинации
Page 3: Метод всех пар, или как не убиться тестируя комбинации

Личное дело

Работает в компании EPAM Systems

В тестировании более пяти лет

Занимается проведением тренингов

Page 4: Метод всех пар, или как не убиться тестируя комбинации

Я говорю на Пиджик

Page 5: Метод всех пар, или как не убиться тестируя комбинации

Суть проблемы

Возможные решения

Идея всех пар

Реализация Примеры

Содержание

Page 6: Метод всех пар, или как не убиться тестируя комбинации

Суть проблемы

Page 7: Метод всех пар, или как не убиться тестируя комбинации

Давайте договоримся

Переменные: Параметры:

Page 8: Метод всех пар, или как не убиться тестируя комбинации

Возможны баги из-за комбинаций параметров

Необходимо тестировать комбинации

Как много?

Суть проблемыПараметры

Page 9: Метод всех пар, или как не убиться тестируя комбинации

Шрифты: 2 (Times, Arial)

Стили: 4

Размеры: 3

2*4*3*3*211= 147 456 тестов

Цвета: 3 (черный, белый, цветной)

Эффекты: 11 переменных по 2 параметра

Суть проблемы

Page 10: Метод всех пар, или как не убиться тестируя комбинации
Page 11: Метод всех пар, или как не убиться тестируя комбинации

Итого

Баги из-за «взаимодействия параметров» встречаются достаточно часто

Тестеры это взаимодействие игнорируют из-за большого количества тестов

Page 12: Метод всех пар, или как не убиться тестируя комбинации

Возможные решения

Page 13: Метод всех пар, или как не убиться тестируя комбинации

Факторы успеха

Количество тестов

Трудоемкость создания

Способность ловить баги

Page 14: Метод всех пар, или как не убиться тестируя комбинации

Количество тестов: минимально

Трудоемкость создания: легко

Способность ловить баги: нулевая

Каждую переменную отдельно

Page 15: Метод всех пар, или как не убиться тестируя комбинации

Способность ловить баги: все возможные

Трудоемкость создания: легко

Количество тестов: нереальное

Полный перебор

Page 16: Метод всех пар, или как не убиться тестируя комбинации

He’s tested all Parameters

Page 17: Метод всех пар, или как не убиться тестируя комбинации

Манкей Тестинг

Количество тестов: неизвестно

Трудоемкость создания: неизвестно

Способность ловить баги: неизвестно

Page 18: Метод всех пар, или как не убиться тестируя комбинации

Метод «Всех пар»

Количество тестов: минимальное

Трудоемкость создания: относительно легко

Способность ловить баги: высокая

Page 19: Метод всех пар, или как не убиться тестируя комбинации

Идея метода «Всех пар»

Page 20: Метод всех пар, или как не убиться тестируя комбинации

Arial -> Обычный

Arial -> Курсив

Arial -> Жирный

Arial -> Размер 4

Arial -> Черный

Arial -> Белый

Идея метода «Всех пар»

Метод гарантирует, что комбинации из пар параметров любых переменных будут протестированы

Page 21: Метод всех пар, или как не убиться тестируя комбинации

Реализация

Page 22: Метод всех пар, или как не убиться тестируя комбинации

Реализация

Page 23: Метод всех пар, или как не убиться тестируя комбинации

Итак, определяем переменные:

Find what: text string

Match case: checkbox

Direction: radio button

Реализация, пример

Page 24: Метод всех пар, или как не убиться тестируя комбинации

Каждая переменная имеет ряд параметров:

Find what: “CAPITALS”, “Mixed Case”, “lowercase” (3 – C, M, L)

Match case: yes or no (2 – Y, N)

Direction: up or down (2 – U, D)

Реализация, пример

Обратите внимание на сокращения

Page 25: Метод всех пар, или как не убиться тестируя комбинации

Реализация, построение таблицы

Латинские квадраты

Ортогональные массивы

IPO метод

Page 26: Метод всех пар, или как не убиться тестируя комбинации

C Y

C N

M Y

M N

L Y

L N

Используя шесть колонок мы сократили количество тестов с 96 до 8

C Y U

C N D

M Y D

M N U

L Y

L N

C Y U E G

C N D F H

M Y D F H

M N U E G

L Y U F H

L N D E G

C Y U E G I

C N D F H J

G J

M Y D F G I

M N U E H J

H I

L Y U F H J

L N D E G I

IPO подход, примерПеременные

Параметры

Page 27: Метод всех пар, или как не убиться тестируя комбинации

Строить таблицы вручную???

Page 28: Метод всех пар, или как не убиться тестируя комбинации

Инструментарий!!!

PICT – Это наш выбор!

Page 29: Метод всех пар, или как не убиться тестируя комбинации

Примеры

Page 30: Метод всех пар, или как не убиться тестируя комбинации

pict “D:\All Pairs\sample.txt”

PICT, Пример

Page 31: Метод всех пар, или как не убиться тестируя комбинации

Пример Строка -> Excel

Page 32: Метод всех пар, или как не убиться тестируя комбинации

Заказчик счастлив

Page 33: Метод всех пар, или как не убиться тестируя комбинации

Более того!

Переменные:

OSes

Browsers

Hardware

Page 34: Метод всех пар, или как не убиться тестируя комбинации

16 тестов вместо 147456

Задачка из начала

Page 35: Метод всех пар, или как не убиться тестируя комбинации

Font Style Size ColorUnderline style

Strikethrough

Double Str

Superscript

Subscript

Shadow Outline Emboss Engrave

Small caps All caps Hidden

TT Italic max black none on on on off off off off on off on on

Arial Bold normal blackwords only off off off on on on on off on off off

TT Bold min white other off on off off off on on on off off on

Arial Bold min red none on off on on on off off off on on off

Arial Regular max white other off off on on off on off off off off off

TTBold Italic max red

words only on off off off on off on on on on on

Arial Bold max red none off on off on off off off on on off off

TT Italic normal white other on on on on on on on off off on on

Arial Regular normal black other off on off off on off on on on on on

TT Italic normal redwords only on on on off off on off off on off off

TT Regular min white none on on on off on on on on on off off

ArialBold Italic normal red other off on on on off on off off off off off

TT Regular min redwords only on on on off on on off off off on off

Arial Italic min whitewords only off off off on on off on off on off on

ArialBold Italic min black none off on off off on off on on off on on

TTBold Italic normal white none on on off on on off off on off off on

Не верится?

Page 36: Метод всех пар, или как не убиться тестируя комбинации

Вместо заключения