Академический Документы
Профессиональный Документы
Культура Документы
Функциональное тестирование ПО
В ЭТОМ РАЗДЕЛЕ:
УРОВНИ ТЕСТИРОВАНИЯ
МЕТОДЫ ТЕСТИРОВАНИЯ
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
ИНТЕГРАЦИОННОЕ ТЕСТИРОВАНИЕ
(integration testing) – проверка взаимодействия
модулей
СИСТЕМНОЕ ТЕСТИРОВАНИЕ
(system testing) – полная проверка приложения
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
КОМПОНЕНТНОЕ ТЕСТИРОВАНИЕ
КОМПОНЕНТНОЕ ТЕСТИРОВАНИЕ
(Component Testing/Unit testing/ Module
testing ) - тестирование отдельных
компонентов программного обеспечения
КОМПОНЕНТ
(Component) - наименьший элемент
программного обеспечения, который может
быть протестирован отдельно
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
КОМПОНЕНТНОЕ ТЕСТИРОВАНИЕ
ИНТЕГРАЦИОННОЕ ТЕСТИРОВАНИЕ
ИНТЕГРАЦИОННОЕ ТЕСТИРОВАНИЕ
(Integration Testing) - тестирование части
системы, состоящей из двух и более частей.
Основная задача – поиск дефектов, связанных с
ошибками в реализации и интерпретации
взаимодействия между модулями.
Так же, как и модульное тестирование,
оперирует интерфейсами модулей и подсистем
и требует создания тестового окружения.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
ИНТЕГРАЦИОННОЕ ТЕСТИРОВАНИЕ
Интерфейс (interface) — совокупность возможностей, способов и методов взаимодействия двух
информационных систем, устройств или программ.
ИНТЕГРАЦИОННОЕ ТЕСТИРОВАНИЕ
Тестирование интеграции
Bottom Up Integration
компонентов (component integration
testing): тестирование, взаимодействия Top Down Integration
между несколькими
"Big Bang" Integration
интегрированными компонентами
одного приложения.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
СИСТЕМНОЕ ТЕСТИРОВАНИЕ
ПРИЕМОЧНОЕ ТЕСТИРОВАНИЕ
ПРИЕМОЧНОЕ ТЕСТИРОВАНИЕ
ПРИЕМОЧНОЕ ТЕСТИРОВАНИЕ
УРОВНИ ТЕСТИРОВАНИЯ
Резюме
Расширенное тестирование
(extended test) направлено на исследование всей заявленной в требованиях функциональности —
даже той, которая низко проранжирована по степени важности
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
Дымовое тестирование
Проводится после выхода нового билда, чтобы определить общий уровень качества
приложения и принять решение о (не)целесообразности выполнения дальнейшего.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
ВОЗМОЖНА ПУТАНИЦА!
Внимание!
ПО ДОСТУПУ К КОДУ
Положительный тест: проверяет, что приложение делает то, что оно должно
делать
Отрицательный тест: проверяет, что приложение не делает то, что не должно
делать, включая проверку сообщений об ошибках. (адекватно реагирует на
неправильное действие)
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
Положительный:
• Записать файл на диск
• записать очень большой файл
• записать существующий файл
• ...
Отрицательный:
• запись на диск с защитой от записи,
• полный диск,
• отмена в середине операции
• ....
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
Выводы:
● Начинаем с позитивных тестов
● Негативные, найдут больше багов – это факт
● Негативных всегда больше, но надо отбирать самые высоко рисковые, наиболее вероятные
● Очень ВАЖНО, иметь тесты на границе позитивных и негативных
Есть вопросы?
Давайте обсудим!
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
ПО УРОВНЮ ФОРМАЛИЗАЦИИ
На основе тест-кейсов\чек-листов (scripted testing, test case\check lists based testing) –
тестирование производится на основе заранее подготовленных тест-кейсов.
ПО УРОВНЮ ФОРМАЛИЗАЦИИ
Исследовательское тестирование
(exploratory testing) - неформальный
метод проектирования тестов, при
котором тестировщик активно
продолжает проектирование тестов в
то время, как эти тесты
выполняются, и использует
полученную во время тестирования
информацию для проектирования
новых и улучшенных тестов.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
ПО УРОВНЮ ФОРМАЛИЗАЦИИ
Свободное тестирование
(ad hoc testing) -тестирование,
выполняемое неформально: без
формальной подготовки тестов,
формальных методов проектирования
тестов, определения ожидаемых
результатов и руководства по выполнению
тестирования.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
ПО УРОВНЮ ФОРМАЛИЗАЦИИ
ФУНКЦИОНАЛЬНОЕ И НЕФУНКЦИОНАЛЬНОЕ
ТЕСТИРОВАНИЕ
ФУНКЦИОНАЛЬНОЕ НЕФУНКЦИОНАЛЬНОЕ
(functional testing): тестирование, основанное на (non-functional testing): тестирование атрибутов компонента
анализе функциональности компонента или системы. или системы, не относящихся к функциональности, то есть:
надежность, внешний вид, практичность,устойчивость..
Функции – это то, ЧТО ДЕЛАЕТ система;
Проверяет КАК система РАБОТАЕТ.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
НЕФУНКЦИОНАЛЬНОЕ ТЕСТИРОВАНИЕ
✔ Инсталяционное
✔Конфигурационное
✔Совместимости
✔GUI & Usability
✔Интернационализации
✔Локадизации
✔ Безопасность
✔ Доступность
✔ Производительность
✔ Масштабируемость
✔ Портируемость/Конфигурацонное
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
ИНСТАЛЛЯЦИОННОЕ ТЕСТИРОВАНИЕ
Инсталляционное тестирование
(installation testing, installability testing) —
тестирование,
направленное на выявление дефектов,
влияющих на протекание стадии
инсталляции (уста-
новки) приложения.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
ИНСТАЛЯЦИОННОЕ ТЕСТИРОВАНИЕ
Ситуации в которых проходит тестирование:
КОНФИГУРАЦИОННОЕ ТЕСТИРОВАНИЕ
Конфигурационное тестирование
(Configuration Testing) — вид
тестирования, направленный на проверку
работы программного обеспечения при
различных конфигурациях системы
(заявленных платформах,
поддерживаемых драйверах, при
различных конфигурациях компьютеров и
т.д.)
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
ТЕСТИРОВАНИЕ СОВМЕСТИМОСТИ
Тестирование совместимости
(compatibility testing) — тестирование,
направленное на проверку способности
приложения работать в указанном
окружении
o кросс-платформенное тестирование
o кросс-браузерное тестирование
o мобильное тестирование
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
ТЕСТИРОВАНИЕ ДОСТУПНОСТИ
ТЕСТИРОВАНИЕ ДОСТУПНОСТИ
1. Цвет не должен быть единственным способом передачи информации.
2. Хорошая контрастность. Хорошая контрастность обеспечивает нормальную
видимость элементов управления и текста даже для людей, не различающих те или
иные оттенки.
Есть отличный инструмент для тестирования веб-сайтов на предмет доступности для
людей с различными формами цветовой слепоты: Color Blind Web Page Filter.
ТЕСТИРОВАНИЕ ДОСТУПНОСТИ
1. Наличие текстовых вариантов для любого нетекстового контента (шрифта Брайля или
озвучивание)
2. Подача информации(медиа контента) с помощью языка жестов сильно облегчит понимание
содержимого людям с нарушением слуха.
3. Возможность управления с клавиатуры
4. Неограниченное время на изучение и работу с контентом (Например, у пользователя есть
возможность повторно авторизоваться и при этом полностью сохранить все введенные
данные.)
5. Исключение опасных для здоровья элементов (Не стоит использовать элементы, которые
вспыхивают или мигают чаще трех раз в секунду. Это может негативно сказаться на здоровье
пользователей.)
6. Помощь при вводе данных (подсказки)
7. ...
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
ТЕСТИРОВАНИЕ БЕЗОПАСНОСТИ
Тестирование безопасности
(security testing) - тестирование с целью
оценить защищенность программного
продукта.
ТЕСТИРОВАНИЕ ИНТЕРНАЦИОНАЛИЗАЦИИ
Тестирование интернационализации
(internationalization testing, i18n) —
тестирование, направленное на проверку
готовности продукта к работе с использованием
различных языков и с учётом различных
национальных
и культурных особенностей.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
ТЕСТИРОВАНИЕ ЛОКАЛИЗАЦИИ
Тестирование локализации
( testing, l10n) — тестирование,
напlocalizationравленное на
проверку корректности и качества адаптации
продукта к использованию на том или ином
языке с учётом национальных и культурных
особенностей.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
ТЕСТИРОВАНИЕ ЛОКАЛИЗАЦИИ
Локализация включает в себя:
ИНТЕРНАЦИОНАЛИЗАЦИЯ ЛОКАЛИЗАЦИЯ
● UTF - кодировки ● Переводы
● Форматы данных ● Правовые требования
● Направление текста ● Валюта и валютные операции
● Выделение локализованных элементов ● Цветовые решения и символика
из кода
● Раскладка клавиатуры и горячие клавиши
● Интеграция со сторонними ресурсами
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
ТЕСТИРОВАНИЕ ЛОКАЛИЗАЦИИ
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
ТЕСТИРОВАНИЕ ЛОКАЛИЗАЦИИ
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
ТЕСТИРОВАНИЕ ЛОКАЛИЗАЦИИ
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
ТЕСТИРОВАНИЕ ЛОКАЛИЗАЦИИ
1. TriggerTrap решил локализовать свое приложение, переведя его на язык целевой аудитории. Когда они
перевели на немецкий язык, их продажи выросли за одну ночь до такой степени, что они были одним из
лучших кассовых приложений для фотографий на немецком языке.
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) — выполнение тест-кейсов, которые
ранее обнаружили дефекты, с целью подтверждения устранения
дефектов
РЕГРЕССИОННОЕ ТЕСТИРОВАНИЕ
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
РЕГРЕССИОННОЕ ТЕСТИРОВАНИЕ
Подходы к регрессионному тестированию
Верификация (verification) - когда раз за разом выполняются одни и те же
действия – выбранные как критичные. Тестировщики используют один
стандартный набор тест кейсов и идут по одному пути.
РЕГРЕССИОННОЕ ТЕСТИРОВАНИЕ
Верификация Свободный поиск
РЕГРЕССИОННОЕ ТЕСТИРОВАНИЕ
Как выбирать тесты для
регрессии???
● Тесты, которые покрывают
безопасность или критически важные
функции для бизнеса;
● Тесты областей, которые регулярно
меняются;
● Тесты функций с высокой вероятностью
ошибок;
● Выбор правильных тестов очень важен
и требует определенной степени знания
приложения и его предполагаемого
развития.
● Объем РТ основан на риске
обнаружения дефектов в ранее
работавшем ПО
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
ТЕСТИРОВАНИЕ ИЗМЕНЕНИЙ
Резюме
ПО СТЕПЕНИ АВТОМАТИЗАЦИИ
• Тестирование на основе граничных условий (boundary value analysis) - Техника тестирования на основе
классов эквивалентности, позволяющая выявить специфические значения исследуемых параметров, относящиеся
к границам классов эквивалентности.
Попарное тестирование (pairwise testing) — техника тестирования, в которой тест-кейсы строятся по принципу проверки
пар значений параметров (переменных) вместо того, чтобы пытаться проверить все возможные комбинации всех значений
всех параметров.
ВИДЫ И МЕТОДЫ ТЕСТИРОВАНИЯ
СЕРТИФИКАЦИЯ ISTQB
Информация по экзамену
Стоимость: 140 евро для РБ\220 евро для ЕС
Язык: английский/русский
Продолжительность: 75 минут на английском и 60 минут на русском языке
Проходной балл: 65%
Типы вопросов: тест, 40 вопросов, на вопрос есть только один верный ответ.
ПРАКТИЧЕСКОЕ ЗАДАНИЕ
Приведите примеры (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 формате. Прислать до начала следующего занятия на емэйл
Задание выполняется на английском
ТЕСТИРОВАНИЕ ИНТЕРНАЦИОНАЛИЗАЦИИ
● Интернационализация включает в себя: