Вы находитесь на странице: 1из 93

ОБРАЗОВАТЕЛЬНЫЙ ЦЕНТР

ПРОГРАММИРОВАНИЯ И ВЫСОКИХ ТЕХНОЛОГИЙ

Функциональное тестирование ПО

ВИДЫ И ТИПЫ И УРОВНИ ТЕСТИРОВАНИЯ


ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

В ЭТОМ РАЗДЕЛЕ:

УРОВНИ ТЕСТИРОВАНИЯ

ВИДЫ И НАПРАВЛЕНИЯ ТЕСТИРОВАНИЯ

МЕТОДЫ ТЕСТИРОВАНИЯ
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ПО СТЕПЕНИ ДЕТАЛИЗАЦИИ ПРИЛОЖЕНИЯ


(по уровням)
КОМПОНЕНТНОЕ ТЕСТИРОВАНИЕ
(component testing, unit testing) – тестирование
отдельного модуля

ИНТЕГРАЦИОННОЕ ТЕСТИРОВАНИЕ
(integration testing) – проверка взаимодействия
модулей

СИСТЕМНОЕ ТЕСТИРОВАНИЕ
(system testing) – полная проверка приложения
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

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

Мягкая игрушка Кот своими руками (выкройка)

КОМПОНЕНТНОЕ ТЕСТИРОВАНИЕ
(Component Testing/Unit testing/ Module
testing ) - тестирование отдельных
компонентов программного обеспечения

КОМПОНЕНТ
(Component) - наименьший элемент
программного обеспечения, который может
быть протестирован отдельно
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

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

Компоненты для тестирования:

o отдельный метод/функция в коде программы


o отдельный компонент в программе (модуль
логина, аккаунт пользователя)
o отдельная программа из сложной
интеграционной системы
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ИНТЕГРАЦИОННОЕ ТЕСТИРОВАНИЕ

ИНТЕГРАЦИОННОЕ ТЕСТИРОВАНИЕ
(Integration Testing) - тестирование части
системы, состоящей из двух и более частей.
Основная задача – поиск дефектов, связанных с
ошибками в реализации и интерпретации
взаимодействия между модулями.
Так же, как и модульное тестирование,
оперирует интерфейсами модулей и подсистем
и требует создания тестового окружения.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ИНТЕГРАЦИОННОЕ ТЕСТИРОВАНИЕ
Интерфейс (interface) — совокупность возможностей, способов и методов взаимодействия двух
информационных систем, устройств или программ.

Интерфейс программирования Интерфейс командной строки (CLI) Графический интерфейс пользователя


приложений (API) (GUI)
набор методов, которые можно инструкции компьютеру даются программные функции
использовать для доступа к путём ввода с клавиатуры текстовых представляются графическими
функциональности другой строк (команд) элементами экрана
программы.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ИНТЕГРАЦИОННОЕ ТЕСТИРОВАНИЕ
Тестирование интеграции
Bottom Up Integration
компонентов (component integration
testing): тестирование, взаимодействия Top Down Integration
между несколькими
"Big Bang" Integration
интегрированными компонентами
одного приложения.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

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

Мягкая игрушка Кот своими руками


СИСТЕМНОЕ ТЕСТИРОВАНИЕ
(System Testing) - процесс тестирования системы
в целом с целью проверки того, что она
соответствует установленным требованиям

ТЕСТИРОВАНИЕ ПОЛНОЙ СИСТЕМЫ


o может быть последним шагом в интеграционном
тестировании в узком смысле
o может быть первый раз, когда из компонентов
появляется рабочая система
В идеале – проводится независимой тестовой
командой.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

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

Приёмочное тестирование (acceptance Типичные формы приемочного


testing): тестирования:
тестирование по отношению к
потребностям и требованиям пользователя, o пользовательское приемочное
проводимое с целью дать возможность тестирование (UAT)
пользователям, заказчикам определить, o эксплуатационное приемочное
принимать систему или нет. тестирование (OAT)
o альфа- и бета- тестирование
Как правило заключительный этап
тестирования, осуществляемый перед
передачей продукта заказчику и/или
конечным пользователям.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

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

Пользовательское приемочное Эксплуатационное приемочное


тестирование тестирование
(User acceptance testing): (Operational acceptance testing):
o тестирование конечного продукта o тестирование резервного
проводят пользователи копирования/восстановление
o может проходить как на оборудовании o аварийное восстановление
производителя или пользователей o задачи технической поддержки
o периодические проверки уязвимостей
безопасности
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

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

Альфа-тестирование Бета-тестирование (beta testing):


(alpha testing): тестирование потенциальными и/или
тестирование потенциальными существующими клиентами/заказчиками на
пользователями/заказчиками или внешней стороне никак не связанными с
независимой командой тестирования на разработчиками.
стороне разработчиков, но вне
разрабатывающей организации.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

УРОВНИ ТЕСТИРОВАНИЯ
Резюме

o Существует много разных подходов к компонентному тестированию.

o Интеграционное тестирование проверяет как компоненты и/или системы


взаимодействуют друг с другом.

o Системное тестирование позволяет проверить систему в целом согласно спецификаций,


требований и бизнес процессов.

o Участие пользователя в приемочном тестировании является критически важным.


Есть вопросы?
Давайте обсудим!
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ПО СТЕПЕНИ ВАЖНОСТИ ТЕСТИРУЕМЫХ ФУНКЦИЙ


(по уровням)
Дымовое тестирование
(smoke test) направлено на проверку самой главной, важной, ключевой функциональности,
неработоспособность которой делает бессмысленной саму идею использования приложения

Тестирование критического пути


(critical path test) направлено на исследование функциональности, используемой типичными
пользователями в типичной повседневной деятельности

Расширенное тестирование
(extended test) направлено на исследование всей заявленной в требованиях функциональности —
даже той, которая низко проранжирована по степени важности
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

СТЕПЕНЬ ВАЖНОСТИ И ПРИОРИТЕТ ВЫПОЛНЕНИЯ

Дымовое тестирование

К наиболее важным функциям обычно относятся:


• функция входа в систему;
• функции, связанные с управлением данными, в частности запись, хранение, обработка и
удаление данных;
• функции, связанные с доступом ко всем вкладкам и меню.

Проводится после выхода нового билда, чтобы определить общий уровень качества
приложения и принять решение о (не)целесообразности выполнения дальнейшего.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

СТЕПЕНЬ ВАЖНОСТИ И ПРИОРИТЕТ ВЫПОЛНЕНИЯ


ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

СТЕПЕНЬ ВАЖНОСТИ И ПРИОРИТЕТ ВЫПОЛНЕНИЯ


ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ВОЗМОЖНА ПУТАНИЦА!
Внимание!

Единой классификации не существует, и две категории имеют в обиходе профессионалов


похожие названия:

Уровни тестирования (по степени детализации приложения)


= компонентное, интеграционное, системное.

Уровни функционального тестирования (по важности функций)


= smoke, critical path, extended.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ПО ЗАПУСКУ КОДА НА ИСПОЛНЕНИЕ

Статическое тестирование Динамическое тестирование

(static testing) - тестирование без (dynamic testing) - тестирование


запуска кода на исполнение. с запуском кода на исполнение.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ПО ЗАПУСКУ КОДА НА ИСПОЛНЕНИЕ


Статическое тестирование Динамическое тестирование

Тестированию подвергаются: Запускается на исполнение:

• Документы (требования, тест-кейсы, описания • Код всего приложения целиком (системное


архитектуры приложения, схемы баз данных и тестирование).
т.д.).. • Код нескольких взаимосвязанных частей
• Графические прототипы. (интеграционное тестирование).
• Код приложения (выполняется самими • Отдельных частей (модульное или компонентное
программистами в рамках аудита кода (code тестирование).
review). • Отдельные участки кода.
• Параметры (настройки) среды исполнения
приложения.
• Подготовленные тестовые данные.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ПО ДОСТУПУ К КОДУ

Метод белого ящика Метод чёрного ящика Метод серого ящика


(white box testing) - у тестировщика (black box testing) - у тестировщика (gray box testing) - комбинация
есть доступ к внутренней структуре либо нет доступа к внутренней методов белого ящика и чёрного
и коду приложения структуре и коду приложения, либо ящика, состоящая в том, что к части
недостаточно знаний для их кода и архитектуры у тестировщика
понимания, либо он не обращается к доступ есть, а к
ним в процессе тестирования части — нет
Есть вопросы?
Давайте обсудим!
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ПО ПРИНЦИПУ РАБОТЫ С ПРИЛОЖЕНИЕМ

Позитивное тестирование Негативное тестирование


(positive testing) направлено на (negative testing) направлено на
исследование приложения в исследование работы приложения в
ситуации, когда все действия ситуациях, когда с ним выполняются
выполняются строго по инструкции без (некорректные) операции
каких бы то ни было и/или используются данные,
ошибок, отклонений, ввода неверных потенциально приводящие к ошибкам
данных и т.д. (деление на ноль)
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ПО ПРИНЦИПУ РАБОТЫ С ПРИЛОЖЕНИЕМ


Какие тестовые примеры вы создадите для проверки входа в приложение?

1: Вход с действительным именем пользователя и паролем Positive

2: Логин с неправильным именем пользователя и паролем Negative

3: попробуйте перейти на главную страницу приложения, минуя логин Negative

Положительный тест: проверяет, что приложение делает то, что оно должно
делать
Отрицательный тест: проверяет, что приложение не делает то, что не должно
делать, включая проверку сообщений об ошибках. (адекватно реагирует на
неправильное действие)
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ПО ПРИНЦИПУ РАБОТЫ С ПРИЛОЖЕНИЕМ

Какие тесты можно провести записывая CD диск?

Положительный:
• Записать файл на диск
• записать очень большой файл
• записать существующий файл
• ...

Отрицательный:
• запись на диск с защитой от записи,
• полный диск,
• отмена в середине операции
• ....
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ПО ПРИНЦИПУ РАБОТЫ С ПРИЛОЖЕНИЕМ


Какие тесты можно провести вычисляя корень квадратный на
калькуляторе?

• Основной тест-кейс - проверить, что корень из корректного числа действительно


вычисляется.
• Разбить можно на следующие классы эквивалентности:
• После вычисления корня остается целое число (корень из 4 = 2)
• После вычисления корня остается дробное число (корень из 3)
• А что, если дробное число у нас будет не только после вычисления корня, но и до?
Можем же мы взять корень из числа 2,2 ?
• Не забудем и про граничные значения, проверим 0
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ПО ПРИНЦИПУ РАБОТЫ С ПРИЛОЖЕНИЕМ


Какие тесты можно провести вычисляя корень квадратный на
калькуляторе?

• Корень из отрицательного числа


• Корень из пустоты - вспоминаем о граничных значениях, мы не можем ввести
строку отрицательной длины, но вот граничное значение (строка нулевой длины)
можем!
• Корень из символов - надо проверить, что скажет система, если ввести или
вкопипастить туда что-то символьное. Причем символы мы делим на русские,
английские и спецсимволы!
• Корень из значения "четыре" - также символы можно поделить на абракадабру и
"типа число". Кстати, если уж говорить о таких "типа числах"...
ПО ПРИНЦИПУ РАБОТЫ С ПРИЛОЖЕНИЕМ
Какие тесты можно провести при работе с корзиной в интернет-
магазине?
● Добавление товара в корзину. ● Открыли корзину в 2 вкладках браузера. Сначала
● Добавление второго товара в корзину нажали "удалить" в одной, потом во второй. То
(того же самого, счетчик должен есть попытка удалить то, что ты сам уже удалил
увеличиться). из своей же корзины.
● Редактирование числа товаров, ● Попытка удалить удаленный админом товар.
● Удаление товара из корзины. ● добавить удаленный админом товар
● Проверка цепочек а-ля «добавил товар в ● админ переносит товар его в другую категорию
корзину - передумал, удалил - ой, нет,
все-таки надо, снова добавил.»

● в случае удаления мы должны увидеть корректное сообщение об ошибке, то в случае переноса


просто продолжить работу
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ПО ПРИНЦИПУ РАБОТЫ С ПРИЛОЖЕНИЕМ

Выводы:
● Начинаем с позитивных тестов
● Негативные, найдут больше багов – это факт
● Негативных всегда больше, но надо отбирать самые высоко рисковые, наиболее вероятные
● Очень ВАЖНО, иметь тесты на границе позитивных и негативных
Есть вопросы?
Давайте обсудим!
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ПО УРОВНЮ ФОРМАЛИЗАЦИИ
На основе тест-кейсов\чек-листов (scripted testing, test case\check lists based testing) –
тестирование производится на основе заранее подготовленных тест-кейсов.

Исследовательское тестирование (exploratory testing) – по тест-кейсу/сценарию, который


дорабатывается в процессе выполнения самих тестов.

Свободное (интуитивное) тестирование (ad hoc testing) – ни


тест-кейсов, ни чек-листов, ни сценариев, полностью опираемся на свой профессионализм
и интуицию.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ПО УРОВНЮ ФОРМАЛИЗАЦИИ

Исследовательское тестирование
(exploratory testing) - неформальный
метод проектирования тестов, при
котором тестировщик активно
продолжает проектирование тестов в
то время, как эти тесты
выполняются, и использует
полученную во время тестирования
информацию для проектирования
новых и улучшенных тестов.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ПО УРОВНЮ ФОРМАЛИЗАЦИИ

Свободное тестирование
(ad hoc testing) -тестирование,
выполняемое неформально: без
формальной подготовки тестов,
формальных методов проектирования
тестов, определения ожидаемых
результатов и руководства по выполнению
тестирования.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ПО УРОВНЮ ФОРМАЛИЗАЦИИ

Хаотическое тестирование (monkey


testing) - тестирование случайным
выбором из большого диапазона входов,
случайным нажатием кнопок, без
соотнесения с тем, как в реальности будет
использоваться система.
Есть вопросы?
Давайте обсудим!
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ВИДЫ ТЕСТИРОВАНИЯ ПО ЦЕЛЯМ И ЗАДАЧАМ


ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ФУНКЦИОНАЛЬНОЕ И НЕФУНКЦИОНАЛЬНОЕ
ТЕСТИРОВАНИЕ

ФУНКЦИОНАЛЬНОЕ НЕФУНКЦИОНАЛЬНОЕ
(functional testing): тестирование, основанное на (non-functional testing): тестирование атрибутов компонента
анализе функциональности компонента или системы. или системы, не относящихся к функциональности, то есть:
надежность, внешний вид, практичность,устойчивость..
Функции – это то, ЧТО ДЕЛАЕТ система;
Проверяет КАК система РАБОТАЕТ.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

НЕФУНКЦИОНАЛЬНОЕ ТЕСТИРОВАНИЕ

Может быть представлено на всех уровнях тестирования.

✔ Инсталяционное
✔Конфигурационное
✔Совместимости
✔GUI & Usability
✔Интернационализации
✔Локадизации
✔ Безопасность
✔ Доступность
✔ Производительность
✔ Масштабируемость
✔ Портируемость/Конфигурацонное
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ИНСТАЛЛЯЦИОННОЕ ТЕСТИРОВАНИЕ

Инсталляционное тестирование
(installation testing, installability testing) —
тестирование,
направленное на выявление дефектов,
влияющих на протекание стадии
инсталляции (уста-
новки) приложения.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ИНСТАЛЯЦИОННОЕ ТЕСТИРОВАНИЕ
Ситуации в которых проходит тестирование:

● новая среда исполнения, в которой приложение ранее не было инсталлировано;


● обновление существующей версии («апгрейд»);
● изменение текущей версии на более старую («даунгрейд»);
● повторная установка приложения с целью устранения возникших проблем
(«переинсталляция»);
● повторный запуск инсталляции после ошибки, приведшей к невозможности продолжения
инсталляции;
● удаление приложения;
● установка нового приложения из семейства приложений;
● автоматическая инсталляция без участия пользователя.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

КОНФИГУРАЦИОННОЕ ТЕСТИРОВАНИЕ

Конфигурационное тестирование
(Configuration Testing) — вид
тестирования, направленный на проверку
работы программного обеспечения при
различных конфигурациях системы
(заявленных платформах,
поддерживаемых драйверах, при
различных конфигурациях компьютеров и
т.д.)
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

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

Тестирование совместимости
(compatibility testing) — тестирование,
направленное на проверку способности
приложения работать в указанном
окружении

o кросс-платформенное тестирование
o кросс-браузерное тестирование
o мобильное тестирование
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ ГРАФИЧЕСКОГО ИНТЕРФЕЙСА


Тестирование графического интерфейса
(GUI testing) – анализ соответствия графического
пользовательского интерфейса программы спецификациям.

Графический интерфейс пользователя (Graphical user


interface, GUI) –разновидность пользовательского
интерфейса, в котором элементы интерфейса (меню, кнопки,
значки, списки и т. п.), представленные пользователю на
дисплее, исполнены в виде графических изображений.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ЭЛЕМЕНТЫ ГРАФИЧЕСКОГО ИНТЕРФЕЙСА


ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ УДОБСТВА ИСПОЛЬЗОВАНИЯ

Тестирование удобства использования


(usability testing) — тестирование, направленное на
исследование того, насколько конечному
пользователю понятно, как работать с продуктом, а
также на то, насколько ему нравится использовать
продукт
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ УДОБСТВА ИСПОЛЬЗОВАНИЯ


● - когда кнопка плоская, необъемная, непонятно что это - кнопка или картинка

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

● Когда кнопка не квадратная

● Когда не вся кнопка кликабельная


ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ УДОБСТВА ИСПОЛЬЗОВАНИЯ


Несколько компонентов с точки зрения идеального юзабилити:

● Эффективность – Мы должны достигать намеченной цели


● Продуктивность – мы должны достигать желаемого максимально продуктивно. Пусть
достижения должен быть краток и эффективен
● Обучаемость – насколько легко изучить программу
● Запоминаемость – насколько она легко воспроизводится пользователем, не надо ли лезть в
мануалы каждый раз
● Удовлетворенность – насколько нравится пользавтелю, это очень спорный момент, кому то
нравится, а кому-то не нравится) Вечные споры про виндоус, андроид и Айос например)
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ УДОБСТВА ИСПОЛЬЗОВАНИЯ


ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ УДОБСТВА ИСПОЛЬЗОВАНИЯ


ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ УДОБСТВА ИСПОЛЬЗОВАНИЯ


ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ УДОБСТВА ИСПОЛЬЗОВАНИЯ


ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ УДОБСТВА ИСПОЛЬЗОВАНИЯ


ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ УДОБСТВА ИСПОЛЬЗОВАНИЯ


ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ УДОБСТВА ИСПОЛЬЗОВАНИЯ


ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ УДОБСТВА ИСПОЛЬЗОВАНИЯ


ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ УДОБСТВА ИСПОЛЬЗОВАНИЯ


ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ УДОБСТВА ИСПОЛЬЗОВАНИЯ


ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ УДОБСТВА ИСПОЛЬЗОВАНИЯ


ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ ДОСТУПНОСТИ

Тестирование доступности (accessibility


testing) - тестирование, направленное на
исследование пригодности продукта к
использованию людьми с ограниченными
возможностями (Зрительные, Опорно-
двигательные, Слуховые, Эпилептические
приступы, Умственные)
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ ДОСТУПНОСТИ
1. Цвет не должен быть единственным способом передачи информации.
2. Хорошая контрастность. Хорошая контрастность обеспечивает нормальную
видимость элементов управления и текста даже для людей, не различающих те или
иные оттенки.
Есть отличный инструмент для тестирования веб-сайтов на предмет доступности для
людей с различными формами цветовой слепоты: Color Blind Web Page Filter.

чек-лист тестирования доступности


ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ ДОСТУПНОСТИ

1. Наличие текстовых вариантов для любого нетекстового контента (шрифта Брайля или
озвучивание)
2. Подача информации(медиа контента) с помощью языка жестов сильно облегчит понимание
содержимого людям с нарушением слуха.
3. Возможность управления с клавиатуры
4. Неограниченное время на изучение и работу с контентом (Например, у пользователя есть
возможность повторно авторизоваться и при этом полностью сохранить все введенные
данные.)
5. Исключение опасных для здоровья элементов (Не стоит использовать элементы, которые
вспыхивают или мигают чаще трех раз в секунду. Это может негативно сказаться на здоровье
пользователей.)
6. Помощь при вводе данных (подсказки)
7. ...
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ БЕЗОПАСНОСТИ

Тестирование безопасности
(security testing) - тестирование с целью
оценить защищенность программного
продукта.

SQL-Инъекции root’ OR 1=1

XSS-атаки Маша <script>alert (“Я тебя


сломал АххахаЭ”)</script>
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ ИНТЕРНАЦИОНАЛИЗАЦИИ

Тестирование интернационализации
(internationalization testing, i18n) —
тестирование, направленное на проверку
готовности продукта к работе с использованием
различных языков и с учётом различных
национальных
и культурных особенностей.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ ЛОКАЛИЗАЦИИ

Тестирование локализации
( testing, l10n) — тестирование,
напlocalizationравленное на
проверку корректности и качества адаптации
продукта к использованию на том или ином
языке с учётом национальных и культурных
особенностей.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ ЛОКАЛИЗАЦИИ
Локализация включает в себя:

● Определение и изучение списка поддерживаемых языков


● Проверка правильности перевода согласно тематике данного сайта или программы
● Проверка правильности перевода элементов интерфейса пользователя
● Проверка правильности перевода системных сообщений и ошибок
● Проверка перевода раздела «Помощь» и сопроводительной документации
● Контроль формата даты и времени.
● Внимание к денежным единицам.
● Внимание к правовым особенностям.
● Раскладка клавиатуры пользователя.
● Контроль символики и цветов.
● Толкование текста, символов, знаков.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ ЛОКАЛИЗАЦИИ VS ИНТЕГРАЦИИ

ИНТЕРНАЦИОНАЛИЗАЦИЯ ЛОКАЛИЗАЦИЯ
● UTF - кодировки ● Переводы
● Форматы данных ● Правовые требования
● Направление текста ● Валюта и валютные операции
● Выделение локализованных элементов ● Цветовые решения и символика
из кода
● Раскладка клавиатуры и горячие клавиши
● Интеграция со сторонними ресурсами
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ ЛОКАЛИЗАЦИИ
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ ЛОКАЛИЗАЦИИ
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ ЛОКАЛИЗАЦИИ
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ ЛОКАЛИЗАЦИИ
1. TriggerTrap решил локализовать свое приложение, переведя его на язык целевой аудитории. Когда они
перевели на немецкий язык, их продажи выросли за одну ночь до такой степени, что они были одним из
лучших кассовых приложений для фотографий на немецком языке.

2. McDonald's поддерживает глобальную целостность бренда, успешно адаптируясь к местным


потребительским и культурным требованиям. Они адаптировали меню, стили оформления, дизайн
кухни, рестораны и рекламу в местных условиях по всему миру. McDonald's предлагает вегетарианские
гамбургеры в Индии и пряные в Мексике.

3. Японская компания Nintendo столкнулась с проблемой цензуры в США. Америка в 1980-х годах была
относительно консервативным местом по сравнению с обществом Японии в то время. Локализовать
оригинальные японские игры, удалив все ссылки на сексуальность, плохой язык и эмоциональные
сцены смерти и потери. Nintendo Америки придерживался этой стратегии и, несомненно, доминировал
на рынке видеоигр в конце 80-х и начале 90-х годов.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ ЛОКАЛИЗАЦИИ
1. KFC как бренд решил выйти на китайский рынок, переведя свой знаменитый лозунг “Finger lickin’ good!”
На китайский, который вышел как “Eat your fingers off.”

2. Форд выпустил свой автомобиль в Пинто в Бразилии без локализации названия. В то время как у Пинто
может быть несколько разных значений на испанском, на португальском языке, на котором говорят в
Бразилии, - пинто - это сленговое слово для «крошечных мужских гениталий». Форд изменил название
автомобиля на Corcel (лошадь). На западе значение пинто стало больше ассоциироваться с мужчинами,
которые водили большие машины в целом.

3. Electrolux, производитель пылесоса, сильно пострадал от своей британской рекламной кампании “Nothing
sucks like Electrolux.”. Когда его привезли в Америку, смысл изменился с простого слогана на дословно
продукт низкого качества. В Америке «sucks» - это сленговый термин, примененный к чему-то ужасному
или бесполезному, в то время как на исходном рынке лозунг не имеет никаких негативных коннотаций.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ ПРОИЗВОДИТЕЛЬНОСТИ

Тестирование производительности
(performance test) - тест, проводимый с целью
оценить поведение системы под нагрузкой

● Нагрузочное
● Стрессовое
● Масштабируемости
● Объемное
● Конкурентное
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

НАГРУЗОЧНОЕ ТЕСТИРОВАНИЕ

Нагрузочное тестирование
(load testing) — исследование способности
приложения сохранять заданные показатели
качества при нагрузке в допустимых
пределах и некотором превышении этих
пределов (определение «запаса прочности»)
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

СТРЕСС ТЕСТИРОВАНИЕ

Стресс тестирование
(stress testing) — исследование поведения
приложения при
нештатных изменениях нагрузки, значительно
превышающих расчётный уровень, или
в ситуациях недоступности значительной
части необходимых приложению ресурсов
Есть вопросы?
Давайте обсудим!
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ПО ТЕСТИРОВАНИЮ ИЗМЕНЕНИЙ
Тестирование нового функционала
(new feature testing)

Повторное тестирование
(re-testing, confirmation testing) — выполнение тест-кейсов, которые
ранее обнаружили дефекты, с целью подтверждения устранения
дефектов

Регрессионное тестирование (regression testing) — тестирование,


направленное на проверку того факта, что в ранее работоспособной
функциональности не появились ошибки,
вызванные изменениями в приложении или среде его функционирования
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

РЕГРЕССИОННОЕ ТЕСТИРОВАНИЕ
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

РЕГРЕССИОННОЕ ТЕСТИРОВАНИЕ
Подходы к регрессионному тестированию
Верификация (verification) - когда раз за разом выполняются одни и те же
действия – выбранные как критичные. Тестировщики используют один
стандартный набор тест кейсов и идут по одному пути.

Метод свободного поиска (look around) – тестирование без заранее


спроектированных тестов и планов.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

РЕГРЕССИОННОЕ ТЕСТИРОВАНИЕ
Верификация Свободный поиск

• Занимает мало времени • Находит больше багов


• Зачастую, покрывает • Находит «случайные» баги
пользовательские сценарии

• Как правило, не находит новые баги • Требует много времени


• Баги «из тест кейсов» могут быть
пропущены
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

РЕГРЕССИОННОЕ ТЕСТИРОВАНИЕ
Как выбирать тесты для
регрессии???
● Тесты, которые покрывают
безопасность или критически важные
функции для бизнеса;
● Тесты областей, которые регулярно
меняются;
● Тесты функций с высокой вероятностью
ошибок;
● Выбор правильных тестов очень важен
и требует определенной степени знания
приложения и его предполагаемого
развития.
● Объем РТ основан на риске
обнаружения дефектов в ранее
работавшем ПО
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ ИЗМЕНЕНИЙ
Резюме

o Как только ошибка исправлена, приложение ДОЛЖНО быть протестировано


повторно.
o Новые ошибки могут появляться в результате исправления старых.
o Существующие недочеты, возможно, не были покрыты исправлением.
o Тесты должны разрабатываться с целью их повторного использования.
o Повторное тестирование – это перезапуск «провалившихся» тестов после
исправления ошибок, чтобы убедиться, что исправленное работает.
o Регрессионное тестирование - это запуск более широкого набора тестов, чтобы
проверить, не появились ли неожиданные ошибки в коде, который не меняли.
Есть вопросы?
Давайте обсудим!
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ПО СТЕПЕНИ АВТОМАТИЗАЦИИ

Ручное тестирование (manual testing) — тестирование, в котором тест-кейсы выполняются человеком


вручную без использования средств автоматизации.

Автоматизированное тестирование (automated testing) — набор техник, подходов и


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

Тест-кейсы частично или полностью выполняет специальное инструментальное средство,


однако разработка тест-кейсов, подготовка данных, оценка результатов выполнения,
написания отчётов об обнаруженных дефектах — всё это и многое другое по-прежнему делает
человек.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ПО ОСНОВЕ ВЫБОРА ВХОДНЫХ ДАННЫХ


(техника\метод)
Доменное тестирование (domain testing) — техника тестирования на основе классов эквивалентности и граничных
условий, позволяющая эффективно создавать тест-кейсы, затрагивающие несколько параметров (переменных)
одновременно (в том числе с учётом взаимозависимости этих параметров).

• Тестирование на основе граничных условий (boundary value analysis) - Техника тестирования на основе
классов эквивалентности, позволяющая выявить специфические значения исследуемых параметров, относящиеся
к границам классов эквивалентности.

• Тестирование на основе классов эквивалентности (equivalence partitioning). - Суть техники состоит в


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

Попарное тестирование (pairwise testing) — техника тестирования, в которой тест-кейсы строятся по принципу проверки
пар значений параметров (переменных) вместо того, чтобы пытаться проверить все возможные комбинации всех значений
всех параметров.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
СЕРТИФИКАЦИЯ ISTQB

ISTQB® Certified Tester Базовый уровень


Требования: Отсутствуют

Информация по экзамену
Стоимость: 140 евро для РБ\220 евро для ЕС
Язык: английский/русский
Продолжительность: 75 минут на английском и 60 минут на русском языке
Проходной балл: 65%
Типы вопросов: тест, 40 вопросов, на вопрос есть только один верный ответ.

Материалы для подготовки и регистрация на экзамен базового уровня


https://bystqb.org/ru/sertifikacija/istqb/istqb-bazovyj-uroven.html
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ПРАКТИЧЕСКОЕ ЗАДАНИЕ
Приведите примеры (3-5 идей) smoke, critical path and extended проверок

User Story #1
Summary: As an end user, I want to send files via chat.
Description:
o There is possibility to send *.jpg and *.doc format;
o User can click on “Browse” button and select file in file system;
o User can drag-and-drop file into chat field;
o In case of slow internet connection (< 1 Mbps), sending is canceled, user is notified with “File
can not be sent due to slow Internet. Please, try later”.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ПРАКТИЧЕСКОЕ ЗАДАНИЕ
Мы разрабатываем новое мобильное приложение – месенджер.

Приведите примеры (3-5 идей) smoke, critical path and extended проверок.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ДОМАШНЕЕ ЗАДАНИЕ
Определить ВСЕ виды типы уровни тестирования, которые можно применить для
сайта Несвижский замок
Выписать все виды\типы уровни с примером проверки(1 пример) в виде таблицы в
Excel формате. Прислать до начала следующего занятия на емэйл
Задание выполняется на английском

Testing type Checks

Smoke testing Check registration with valid credentials


ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ

ТЕСТИРОВАНИЕ ИНТЕРНАЦИОНАЛИЗАЦИИ
● Интернационализация включает в себя:

● Создание продукта с учетом возможности кодировки Unicode (стандарт кодирования,


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

Вам также может понравиться