Чтение онлайн

на главную - закладки

Жанры

tестирование dot com
Шрифт:

end-to-end testing).

Сначала краткие и емкие определения, а затем иллюстрации.

Классификация видов тестирования

161

Компонентное тестирование (component testing) — это тестиро-

вание на уровне логического компонента. И это тестирование

самого логического компонента.

Интеграционное тестирование (integration testing)

это тести-

рование на уровне двух или больше компонентов. И это тестиро-

вание взаимодействия этих двух или больше компонентов.

Системное (или энд-ту-энд) тестирование (system or end-to-end

testing) — это проверка всей системы от начала до конца.

Теперь иллюстрации кратких и емких определений.

Допустим, программисту поставлена задача написать код, который

бы находил полные имена и е-мейлы пользователей, потра-

тивших больше 1000 долл. в нашем онлайн-магазине с момента

регистрации. Таким пользователям должен быть отправлен е-мейл

с подарочным сертификатом, использование которого до 17 но-

ября включительно предоставит 5%-ю скидку на любую разовую

покупку.

Кстати, для добротного тестирования данной функциональности нужно

написать гораздо больше тест-кейсов, чем я приведу, но сейчас наша

задача — это понять

суть каждого из трех рассматриваемых видов тестирования и

разницу между ними.

КОМПОНЕНТНОЕ ТЕСТИРОВАНИЕ

Для начала выделим три компонента, которые мы протестиро-

вали бы:

1. Создание файла с полными именами, е-мейлами и номера-

ми сертификатов.

2. Рассылка пользователям е-мейлов.

3. Правильное предоставление скидки вышеуказанным поль-

зователям.

Проверяем.

Компонент 1

Проверяем, что создается файл нужного формата

• с полными именами и е-мейлами пользователей, потратив-

ших > 1000 долл., и

• номером сертификата для каждого из этих пользователей.

162

Тестирование Дот Ком. Часть 2

Это позитивное тестирование.

Мы также должны проверить, не затесались ли в наш файл

пользователи, потратившие < 1000 долл.

Это негативное тестирование, связанное с потенциальным дефек-

том в коде, отвечающем за выбор правильных пользователей.

Компонент 2

Допустим,

код первого компонента, который должен был создать

для нас файл, не работает. Мы не отчаиваемся, а просто вручную,

не ропща на судьбу, создаем файл установленного формата с взя-

тыми с потолка

• е-мейлами,

• полными именами пользователей и

• номерами подарочных сертификатов.

Этот файл мы "скармливаем" программе рассылки е-мейлов и

проверяем, что правильные е-мейлы доходят до пользователей из

файла(позитивное тестирование).

Компонент 3

Как мы помним, компонент 1 не работает. Что делать?

Сертификат — это как некий код, например "UYTU764587657".

который нужно ввести во время оплаты, и если сертификат дей-

ствительный, то итоговая сумма к оплате уменьшается.

В данном случае можно попросить программиста, чтобы тот по-

мог сгенерировать легитимные номера сертификатов. Когда но-

мера сертификатов имеются в наличии, можно, например, прове-

рить, работает ли подарочный сертификат только один раз (пози-

тивное тестирование) или его можно использовать для двух или

более транзакций (негативное тестирование, воспроизводящее

ошибку пользователя, использующего сертификат более одного

раза). Также нужно будет проверить размер скидки (5%) (пози-

тивное тестирование) и действительность сертификата:

до 17 ноября (позитивное тестирование), 17

ноября (позитивное тестирование) и

после 17 ноября (негативное тестирование, воспроизводящее

ошибку пользователя, использующего просроченный сер-

тификат).

Классификация видов тестирования

163

Кстати, в случаях когда тестирование связано со сроками (например,

сроком истечения сертификата), мы, естественно, не ждем до 17 но-

ября, а просто меняем системное время тест-машины на нужное время

или меняем значение времени в базе данных. Естественно, что такие

изменения вы должны предварительно согласовать с коллегами, кото-

рые работают на той же тест-машине или с той же базой данных.

Важный момент: хотя по спеку все три компонента и взаимосвя-

заны, из-за проблем в коде у нас получилось компонентное тес-

тирование в чистом виде. Другими словами, мы тестировали са-

Поделиться:
Популярные книги

Печать пожирателя 2

Соломенный Илья
2. Пожиратель
Фантастика:
городское фэнтези
попаданцы
аниме
сказочная фантастика
5.00
рейтинг книги
Печать пожирателя 2

Отряд

Валериев Игорь
5. Ермак
Фантастика:
альтернативная история
5.25
рейтинг книги
Отряд

Шайтан Иван 2

Тен Эдуард
2. Шайтан Иван
Фантастика:
боевая фантастика
попаданцы
альтернативная история
5.00
рейтинг книги
Шайтан Иван 2

Династия. Феникс

Майерс Александр
5. Династия
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Династия. Феникс

Твое сердце будет разбито. Книга 1

Джейн Анна
Любовные романы:
современные любовные романы
5.50
рейтинг книги
Твое сердце будет разбито. Книга 1

Князь Барсов. Том 2

Петров Максим Николаевич
2. РОС. На мягких лапах
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Князь Барсов. Том 2

Зауряд-врач

Дроздов Анатолий Федорович
1. Зауряд-врач
Фантастика:
альтернативная история
8.64
рейтинг книги
Зауряд-врач

Законы Рода. Том 8

Андрей Мельник
8. Граф Берестьев
Фантастика:
юмористическое фэнтези
аниме
фэнтези
5.00
рейтинг книги
Законы Рода. Том 8

Испытание золотом

Распопов Дмитрий Викторович
6. 30 сребреников
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Испытание золотом

Убивать чтобы жить 3

Бор Жорж
3. УЧЖ
Фантастика:
героическая фантастика
боевая фантастика
рпг
5.00
рейтинг книги
Убивать чтобы жить 3

Начальник милиции. Книга 3

Дамиров Рафаэль
3. Начальник милиции
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Начальник милиции. Книга 3

Медиум

Злобин Михаил
1. О чем молчат могилы
Фантастика:
фэнтези
7.90
рейтинг книги
Медиум

Хозяин Теней 4

Петров Максим Николаевич
4. Безбожник
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Хозяин Теней 4

Шайтан Иван 6

Тен Эдуард
6. Шайтан Иван
Фантастика:
попаданцы
альтернативная история
историческое фэнтези
7.00
рейтинг книги
Шайтан Иван 6