17
7 принципов эффективного тестирования Коучинг в ИТ coach.ak-itconsulting.com

7 принципов эффективного тестирования

Embed Size (px)

DESCRIPTION

Слайды к вебинару, который прошел 18.11.2013. В ходе вебинара вы: - Узнаете о том, как из 7 простых принципов возникает стройная тестовая система - Поймете почему тестирование никогда не станет полностью автоматизованым - Узнаете как на практике применять каждый из основных принципов Больше информации по ссылке: http://coach.ak-itconsulting.com/2013/11/7-principov-testirovaniya/

Citation preview

Page 1: 7 принципов эффективного тестирования

7 принципов эффективного тестирования

Коучинг в ИТ

coach.ak-itconsulting.com

Page 3: 7 принципов эффективного тестирования

Намерения на сегодня

● Узнать какие бывают цели тестирования

● Определить активности в тестировании и применить к ним основные принципы

● На примерах рассмотреть 7 принципов тестирования

● Научится применять эти принципы на практике

Page 4: 7 принципов эффективного тестирования

Цели теcтирования

● Обнаружение дефектов

● Повышение уверенности в уровне качества

● Предоставление информации для принятия решений

● Предотвращение дефектов

Page 5: 7 принципов эффективного тестирования

Этапы тестирования

● Планирование тестирования

● Проектирование тестирования

● Реализация тестирования

● Выполнение тестирования

● Оценка тестирования

Page 6: 7 принципов эффективного тестирования

Принцип 1

Тестирование демонстрирует наличие дефектов (Testing shows presence of defects)

Тестирование может показать, что дефекты

присутствуют, но не может доказать, что их нет.

Тестирование снижает вероятность наличия дефектов,

находящихся в программном обеспечении, но, даже

если дефекты не были обнаружены, это не доказывает

его корректности.

Page 7: 7 принципов эффективного тестирования

Принцип 2

Исчерпывающее тестирование недостижимо (Exhaustive testing is impossible)

Полное тестирование с использованием всех

комбинаций вводов и предусловий физически

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

Вместо исчерпывающего тестирования должны

использоваться анализ рисков и расстановка

приоритетов, чтобы более точно сфокусировать усилия

по тестированию

Page 8: 7 принципов эффективного тестирования

Принцип 3

Раннее тестирование (Early testing)

Чтобы найти дефекты как можно раньше,

активности по тестированию должны быть начаты

как можно раньше в жизненном цикле разработки

программного обеспечения или системы, и должны

быть сфокусированы на определенных целях.

Page 9: 7 принципов эффективного тестирования

Процесс разработки ПО

Page 10: 7 принципов эффективного тестирования

Принцип 4

Скопление дефектов (Defect clustering)

Усилия тестирования должны быть сосредоточены

пропорционально ожидаемой, а позже реальной

плотности дефектов по модулям. Как правило,

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

тестировании или повлекших за собой основное

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

количестве модулей.

Page 11: 7 принципов эффективного тестирования

Принцип 5

Парадокс пестицида (Pesticide paradox)

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

счете этот набор тестовых сценариев больше не будет находить

новых дефектов. Чтобы преодолеть этот “парадокс пестицида”,

тестовые сценарии должны регулярно рецензироваться и

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

чтобы охватить все компоненты программного обеспечения, или

системы, и найти как можно больше дефектов

Page 12: 7 принципов эффективного тестирования

Итерационная модель

Page 13: 7 принципов эффективного тестирования

Регрессионное тестирование

Page 14: 7 принципов эффективного тестирования

Принцип 6

Тестирование зависит от контекста (Testing is context depending)

Тестирование выполняется по-разному в

зависимости от контекста. Например, программное

обеспечение, в котором критически важна

безопасность, тестируется иначе, чем сайт

электронной коммерции.

Page 15: 7 принципов эффективного тестирования

Принцип 7

Заблуждение об отсутствии ошибок.

(Absence – of – errors fallacy)

Обнаружение и исправление дефектов не помогут,

если созданная система не подходит

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

потребностям

Page 16: 7 принципов эффективного тестирования

Примеры

Principle

Номер Принцип Principle

1 Тестирование демонстрирует наличие дефектов

Testing shows presence of defects

2 Исчерпывающее тестирование недостижимо

Exhaustive testing is impossible

3 Раннее тестирование Early testing

4 Скопление дефектов Defect clustering

5 Парадокс пестицида Pesticide paradox

6 Тестирование зависит от контекста

Testing is context depending

7 Заблуждение об отсутствии ошибок.

Absence – of – errors fallacy

Page 17: 7 принципов эффективного тестирования

Спасибо за Ваше участие!

● Живой тренинг «Техники тестирования в рамках SCRUM»

coach.ak-itconsulting.com/trainings/testing-in-scrum/

● Помогите нам улучшится - оставьте отзыв:

bit.ly/1eE2E50

● Facebook: facebook.com/CoachInIT

● ВКонтакте: vk.com/club55392836

● Web: coach.ak-itconsulting.com