Презентация Принципы разработки тестов

Презентация Принципы разработки тестов


Предлагаем ознакомиться с содержанием и скачать для редактирования или печати презентацию «Принципы разработки тестов», содержащую 41 слайд и доступную в формате ppt. Размер файла доклада составляет 7.15 MB

Просмотреть и скачать

Слайды и текст этого доклада

Тема 5 Тема 5 «Принципы разработки тестов»
Рис.1 Тема 5 Тема 5 «Принципы разработки тестов»
Принципы разработки тестов, рис. 2
Рис.2
Принципы разработки тестов, рис. 3
Рис.3
Тест-кейс (test case) – это Тест-кейс (test case) – это набор входных данных, условий выполнения и о
Рис.4 Тест-кейс (test case) – это Тест-кейс (test case) – это набор входных данных, условий выполнения и ожидаемых результатов, разработанный с целью проверки того или иного свойства или поведения программного средства.
Тест-кейс Тест – «триплет» Вход/Состояние/Выход – последовательность шагов/действий, которая перевод
Рис.5 Тест-кейс Тест – «триплет» Вход/Состояние/Выход – последовательность шагов/действий, которая переводит систему из одного состояния в другое Триплет ISO, где: [I] – is input data or action (входные данные или действия) [S] – is State of system at which data will be input (состояние системы, которая получает входные данные или воздействие) [O] – is the expected Output (ожидаемые Выход, выходные данные или выходной состояние системы) Выполненный с определенной Целью!
Принципы разработки тестов, рис. 6
Рис.6
Чек-лист (check-list) – это Чек-лист (check-list) – это набор идей тестов.
Рис.7 Чек-лист (check-list) – это Чек-лист (check-list) – это набор идей тестов.
Задание (см. следующий слайд)
Рис.8 Задание (см. следующий слайд)
Какие бывают тесты Основные виды тестов: позитивные; негативные. Направления тестирования: статическ
Рис.9 Какие бывают тесты Основные виды тестов: позитивные; негативные. Направления тестирования: статическое; динамическое. Методы тестирования: чёрный ящик; белый ящик; серый ящик. Виды тестирования: инсталляционное; регрессионное; нового функционала; конфигурационное; совместимости; удобство использования; интернационалиазации; локализации; исследовательское.
Принципы разработки тестов, рис. 10
Рис.10
Класс эквивалентности (equivalence class) – набор тестов, полное выполнение которого является избыто
Рис.11 Класс эквивалентности (equivalence class) – набор тестов, полное выполнение которого является избыточным и не приводит к обнаружению новых дефектов. Класс эквивалентности (equivalence class) – набор тестов, полное выполнение которого является избыточным и не приводит к обнаружению новых дефектов.
Признаки эквивалентности (несколько тестов эквивалентны, если): Признаки эквивалентности (несколько
Рис.12 Признаки эквивалентности (несколько тестов эквивалентны, если): Признаки эквивалентности (несколько тестов эквивалентны, если): Они направлены на поиск одной и той же ошибки. Если один из тестов обнаруживает ошибку, другие её тоже, скорее всего, обнаружат. Если один из тестов НЕ обнаруживает ошибку, другие её тоже, скорее всего, НЕ обнаружат. Тесты используют схожие наборы входных данных. Для выполнения тестов мы совершаем одни и те же операции. Тесты генерируют одинаковые выходные данные или приводят приложение в одно и то же состояние. Все тесты приводят к срабатыванию одного и того же блока обработки ошибок («error handling block»). Ни один из тестов не приводит к срабатыванию блока обработки ошибок («error handling block»).
Граничные условия (border conditions) – это те места, в которых один класс эквивалентности переходит
Рис.13 Граничные условия (border conditions) – это те места, в которых один класс эквивалентности переходит в другой. Граничные условия (border conditions) – это те места, в которых один класс эквивалентности переходит в другой.
Пример Проверить реакцию приложения на ввод слишком короткого (менее трёх символов) или слишком длин
Рис.14 Пример Проверить реакцию приложения на ввод слишком короткого (менее трёх символов) или слишком длинного (более 20-ти символов) имени пользователя, которое может содержать только английские буквы, цифры и знак подчёркивания.
И ещё один пример. Для обсуждения! «Чтобы добавить файл в свою фотогалерею на сайте, пользователь до
Рис.15 И ещё один пример. Для обсуждения! «Чтобы добавить файл в свою фотогалерею на сайте, пользователь должен кликнуть по кнопке Открыть, выбрать файл и кликнуть по кнопке OK». Давайте абстрагируемся от пользовательского интерфейса и подумаем о файле. Какие случаи нам надо будет проверить?
Выводы Выводы Классы эквивалентности не всегда очевидны. Как правило, негативных тестов получается б
Рис.16 Выводы Выводы Классы эквивалентности не всегда очевидны. Как правило, негативных тестов получается больше, чем позитивных. Принадлежность теста к позитивным или негативным зависит от требований.
Рекомендации по разработке тестов Рекомендации по разработке тестов Начинайте с простых очевидных те
Рис.17 Рекомендации по разработке тестов Рекомендации по разработке тестов Начинайте с простых очевидных тестов. Затем переходите к более сложным тестам. Помните о граничных условиях. Если остаётся время, занимайтесь исследовательским тестированием.
Последовательность разработки и выполнения тестов Последовательность разработки и выполнения тестов
Рис.18 Последовательность разработки и выполнения тестов Последовательность разработки и выполнения тестов Простые позитивные. Простые негативные. Сложные позитивные. Сложные негативные.
Документирование тестов
Рис.19 Документирование тестов
Свойства хорошего тест-кейса Хороший тест-кейс удовлетворяет следующим критериям: Обладает высокой в
Рис.20 Свойства хорошего тест-кейса Хороший тест-кейс удовлетворяет следующим критериям: Обладает высокой вероятностью обнаружения ошибки. Исследует соответствующую («ту, которую надо») область приложения. Выполняет какие-то интересные действия. Не выполняет ненужных действий. Является не слишком простым, но и не слишком сложным. Не является избыточным по отношению к другим тестам. Делает обнаруженную ошибку очевидной. Позволяет легко диагностировать ошибку.
Тестовый сценарий (test scenario) – набор тестов (тест-кейсов), собранных в последовательность для д
Рис.21 Тестовый сценарий (test scenario) – набор тестов (тест-кейсов), собранных в последовательность для достижения некоторой цели. Тестовый сценарий (test scenario) – набор тестов (тест-кейсов), собранных в последовательность для достижения некоторой цели.
Какой инструментарий используется на вашем проекте для создания, хранения и управления test cases?
Рис.22 Какой инструментарий используется на вашем проекте для создания, хранения и управления test cases?
Тестовые сценарии: рекомендации
Рис.23 Тестовые сценарии: рекомендации
Принципы разработки тестов, рис. 24
Рис.24
1. Начинайте как можно раньше, ещё до выхода первого билда. 1. Начинайте как можно раньше, ещё до вы
Рис.25 1. Начинайте как можно раньше, ещё до выхода первого билда. 1. Начинайте как можно раньше, ещё до выхода первого билда.
2. Разбивайте приложение на отдельные части/модули. 2. Разбивайте приложение на отдельные части/моду
Рис.26 2. Разбивайте приложение на отдельные части/модули. 2. Разбивайте приложение на отдельные части/модули.
3. Для каждой области/модуля пишите чек-лист. 3. Для каждой области/модуля пишите чек-лист.
Рис.27 3. Для каждой области/модуля пишите чек-лист. 3. Для каждой области/модуля пишите чек-лист.
4. Пишите вопросы, уточняйте детали, добавляйте «косметику», используйте copy-paste. 4. Пишите вопро
Рис.28 4. Пишите вопросы, уточняйте детали, добавляйте «косметику», используйте copy-paste. 4. Пишите вопросы, уточняйте детали, добавляйте «косметику», используйте copy-paste.
5. Получите рецензию коллег-тестировщиков, разработчиков, заказчиков. 5. Получите рецензию коллег-те
Рис.29 5. Получите рецензию коллег-тестировщиков, разработчиков, заказчиков. 5. Получите рецензию коллег-тестировщиков, разработчиков, заказчиков.
6. Обновляйте тесты, как только обнаружили ошибку или изменилась функциональность. 6. Обновляйте тес
Рис.30 6. Обновляйте тесты, как только обнаружили ошибку или изменилась функциональность. 6. Обновляйте тесты, как только обнаружили ошибку или изменилась функциональность.
Принципы разработки тестов, рис. 31
Рис.31
Что такое Notepad? Что такое Notepad? Какие функции для него наиболее важны?
Рис.32 Что такое Notepad? Что такое Notepad? Какие функции для него наиболее важны?
Итак, вот наш Smoke test Итак, вот наш Smoke test
Рис.33 Итак, вот наш Smoke test Итак, вот наш Smoke test
Фактически, это – чек-лист. И сами пункты грамотно сформированного чек-листа – готовые заголовки тес
Рис.34 Фактически, это – чек-лист. И сами пункты грамотно сформированного чек-листа – готовые заголовки тест-кейсов. Фактически, это – чек-лист. И сами пункты грамотно сформированного чек-листа – готовые заголовки тест-кейсов.
Когда мы распишем наши тесты по правилам, Smoke Test примет следующий вид: Когда мы распишем наши те
Рис.35 Когда мы распишем наши тесты по правилам, Smoke Test примет следующий вид: Когда мы распишем наши тесты по правилам, Smoke Test примет следующий вид:
Аналогичным образом начинаем и продолжаем работать с тестом критического пути: Аналогичным образом н
Рис.36 Аналогичным образом начинаем и продолжаем работать с тестом критического пути: Аналогичным образом начинаем и продолжаем работать с тестом критического пути:
Детализируем чек-лист: Детализируем чек-лист:
Рис.37 Детализируем чек-лист: Детализируем чек-лист:
Продолжаем детализацию до тех пор, пока не получим логичный и достаточный набор тестов. После этого
Рис.38 Продолжаем детализацию до тех пор, пока не получим логичный и достаточный набор тестов. После этого переносим его в шаблон и работаем аналогично тому, как мы делали это при разработке Smoke Test. Продолжаем детализацию до тех пор, пока не получим логичный и достаточный набор тестов. После этого переносим его в шаблон и работаем аналогично тому, как мы делали это при разработке Smoke Test.
Есть вопросы? Давайте обсудим! Есть вопросы? Давайте обсудим!
Рис.39 Есть вопросы? Давайте обсудим! Есть вопросы? Давайте обсудим!
Как делать не нужно
Рис.40 Как делать не нужно
Как делать хорошо
Рис.41 Как делать хорошо


Скачать презентацию