Как стать true-тестировщиком. Станислав Ким, Урансофт....

22
Учебный центр ИТ УРАНСОФТ Учим, устраиваем, развиваем!

Upload: uransoft

Post on 26-Jun-2015

129 views

Category:

Education


2 download

TRANSCRIPT

Page 1: Как стать TRUE-тестировщиком. Станислав Ким, Урансофт. Как стать TRUE-тестировщиком #4

Учебный центр ИТ УРАНСОФТ

Учим, устраиваем, развиваем!

Page 2: Как стать TRUE-тестировщиком. Станислав Ким, Урансофт. Как стать TRUE-тестировщиком #4

Тестирование требований

Software requirements specification, SRS

Программные требования – Software Requirements – свойства программного обеспечения, которые должны быть надлежащим образом представлены в нём для решения конкретных практических задач. Данная область знаний касается вопросов извлечения (сбора), анализа, специфицирования и утверждения требований.

Page 3: Как стать TRUE-тестировщиком. Станислав Ким, Урансофт. Как стать TRUE-тестировщиком #4

SRS по К. Вигерсу

Page 4: Как стать TRUE-тестировщиком. Станислав Ким, Урансофт. Как стать TRUE-тестировщиком #4

Пример

Page 5: Как стать TRUE-тестировщиком. Станислав Ким, Урансофт. Как стать TRUE-тестировщиком #4

Требования к требованиям

Корректность

Недвусмысленность

Полнота набора требований

Непротиворечивость набора требований

Проверяемость (тестопригодность)

Трассируемость

Понимаемость

Page 6: Как стать TRUE-тестировщиком. Станислав Ким, Урансофт. Как стать TRUE-тестировщиком #4

Корректность

Вопрос: На сколько требование корректно или кто-то допустил ошибку при написании требования?

Пример: Для стирания последнего знака используется клавиша [←] (клавиша со стрелкой)

Описание: Ошибка в требовании. Правильно будет: «Для стирания последнего знака используется клавиша [Backspace] (клавиша со стрелкой и надписью Backspace)»

Page 7: Как стать TRUE-тестировщиком. Станислав Ким, Урансофт. Как стать TRUE-тестировщиком #4

Корректность

Как находить? Знание предметной области,

Трассировка требования вверх (бизнес-требования), трассировка требований вниз (низкоуровневые требования — дизайн, макеты, детальное описание реализации). Поиск ошибок и нестыковок.

«Peer review» – оценка «коллегами» – теми, кто занимается той же самой работой.

Page 8: Как стать TRUE-тестировщиком. Станислав Ким, Урансофт. Как стать TRUE-тестировщиком #4

Недвусмысленность

Могут ли 2 различных человека понять требование по-разному?

Пример: Сколько будет 2+2х2? 6 или 8?

Описание: Отработка понятия «Подитог», как в случае (2+2)х2 или соблюдение «порядка выполнения мат. действий»

Page 9: Как стать TRUE-тестировщиком. Станислав Ким, Урансофт. Как стать TRUE-тестировщиком #4

Недвусмысленность

Page 10: Как стать TRUE-тестировщиком. Станислав Ким, Урансофт. Как стать TRUE-тестировщиком #4

Недвусмысленность

Как находить? Проверять «ветвистость» требований:

если есть условия или исключения — проверять, чтобы они все были описаны и не было «неописанных дыр»,

Избегать ветвлений или форматировать их в таблицы вариантов.

«Peer review» – оценка коллегами.

Page 11: Как стать TRUE-тестировщиком. Станислав Ким, Урансофт. Как стать TRUE-тестировщиком #4

Полнота требований

Насколько полным является набор требований?

Если есть секция в SRS, определяющая функциональность модуля, то вся ли функциональность этого модуля покрыта требованиями?

Нет ли дыр?

Page 12: Как стать TRUE-тестировщиком. Станислав Ким, Урансофт. Как стать TRUE-тестировщиком #4

Полнота требований

Как находить? WBS требований сверху вниз,

Все классы пользователей,

Проверка пограничных значений,

Повторы требований при продолжении сбора,

Выход за рамки проекта,

Низкий приоритет требования.

Page 13: Как стать TRUE-тестировщиком. Станислав Ким, Урансофт. Как стать TRUE-тестировщиком #4

Непротиворечивость набора

Поиск требований, которые противоречат друг другу:

1. Это может быть очевидным, когда 2 требования явно говорят противоположные вещи,

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

Page 14: Как стать TRUE-тестировщиком. Станислав Ким, Урансофт. Как стать TRUE-тестировщиком #4

Непротиворечивость набора

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

формулировки в требованиях.

Делить на категории и ревьювить их направленно на предмет противоречий.

Выделять все требования, трассирующиеся на одно верхнеуровневое требование и анализировать такие наборы.

Page 15: Как стать TRUE-тестировщиком. Станислав Ким, Урансофт. Как стать TRUE-тестировщиком #4

Проверяемость

Один из основных и самых важных критериев для тестировщиков. Возможно ли проверить это требование и убедиться, что оно выполняется?

Пример: в случае возникновения критической ошибки калькулятор должен перезагрузиться.

Пример 2: информация на экране должна отображаться в понятном пользователю виде

Page 16: Как стать TRUE-тестировщиком. Станислав Ким, Урансофт. Как стать TRUE-тестировщиком #4

Проверяемость

Как тестировать?

«Как я буду это проверять?». Детально анализировать, и, возможно, вносить правки в требование (уточнения, ограничения)

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

Page 17: Как стать TRUE-тестировщиком. Станислав Ким, Урансофт. Как стать TRUE-тестировщиком #4

Трассируемость

Любое требование проходит путь от бизнес-идеи до деталей реализации. Это может быть 3 уровня требований (product requirements, software requirements, detailed design document), может быть и больше.

Трассируемость — это связь с требованием выше и требованием ниже. Кроме того трассируемость требования (функции) в различных документах.

Page 18: Как стать TRUE-тестировщиком. Станислав Ким, Урансофт. Как стать TRUE-тестировщиком #4

Понимаемость

Могут ли все участники процесса понять, что требуется от системы по описанию требования?

Пример: Калькулятор должен уметь выделять и начислять НДС.

Page 19: Как стать TRUE-тестировщиком. Станислав Ким, Урансофт. Как стать TRUE-тестировщиком #4

Деление на НОЛЬ

Page 20: Как стать TRUE-тестировщиком. Станислав Ким, Урансофт. Как стать TRUE-тестировщиком #4

Деление на НОЛЬ

Page 21: Как стать TRUE-тестировщиком. Станислав Ким, Урансофт. Как стать TRUE-тестировщиком #4

Курсы Урансофт

(JAVA-01) Введение в Java

(JAVA-02) Основы языка и web-разработки на Java

(SQA-01) Основы тестирования ПО

(SQA-02) Введение в профессию тестировщика

(SA-01) Системный анализ в разработке ПО

(SRS-01) Сбор требований к ПО

Page 22: Как стать TRUE-тестировщиком. Станислав Ким, Урансофт. Как стать TRUE-тестировщиком #4

Спасибо!Вопросы?

+7 (812) 309-78-59, 438-16-88

Станислав КИМ