Введение в тестирование по содержание
Скачать 3.94 Mb.
|
Введение в тестирование ПОСодержаниеОсновы тестирования Модели жизненного цикла разработки Команда тестирования Типы и уровни тестирования Дефекты Портрет тестировщика ПО Основы тестированияЧто такое тестирование?Для начала мы ... … удостоверяемся, все ли в порядке Почему тестирование необходимо?Тестирование необходимо, потому что люди склонны ошибаться. Одни ошибки незначительны, другие же опасны и дорого обходятся. Поскольку ошибки допускают все люди, мы должны внимательно проверять результаты своей (и чужой ;-) ) работы, всего, что мы делаем. Что такое тестирование? 1/2Это процесс исполнения программы с целью обнаружения ошибок (“Искусство тестирования программ”, Г. Майерс, 1979) Процесс наблюдения за выполнением программы в специальных условиях и вынесения на этой основе оценки каких-либо ее аспектов ([ANSI/IEEE standard 610.12-1990: Glossary of SE Terminology. NY:IEEE, 1987]) Техническое исследование программы для получения информации о ее качестве с точки зрения определенного круга заинтересованных лиц [С. Kaner, 1999] Проверка соответствия между реальным поведением программы и ее ожидаемым поведением на конечном наборе тестов, выбранном определенным образом [IEEE Guide to Software Engineering Body of Knowledge, SWEBOK, 2004] 1980 1987 1999 2004 Что такое тестирование? 2/2Процесс, содержащий в себе все активности жизненного цикла, как динамические, так и статические, касающиеся планирования, подготовки и оценки программного продукта и связанных с этим результатов работ с целью определить, что они соответствуют описанным требованиям, показать, что они подходят для достижения заявленных целей, а также для нахождения дефектов.Определение тестирования «по частям» 1/5Во-первых, тестирование – это процесс, а не единичное действиеОпределение тестирования «по частям» 2/5Процесс тестирования включен во все активности жизненного циклаОпределение тестирования «по частям» 3/5Тестирование ПО может быть статическим и динамическимСтатическое тестирование: Тестирование компонента или системы на уровне спецификации или реализации без исполнения кода программного продукта, например рецензирование или статический анализ кода.Динамическое тестирование: Тестирование, проводимое во время выполнения программного обеспечения, компонента или системы.Определение тестирования «по частям» 4/5Планирование Подготовка Оценка Определение тестирования «по частям» 5/5Тестированию подлежит программный продукт и связанные с ним рабочие продуктыЦели тестированияПредоставление информации для принятия решений Повышение уверенности в уровне качества Обнаружение дефектов Предотвращение дефектов Тестирование помогает уменьшить общий уровень риска в системе после обнаружения и устранения дефектов и порождает уверенность в качестве ПООпределение тестирования: сравнение как ключевое понятиеТестирование всегда предполагает сравнение.Что с чем сравнивается?Объект тестирования (что сравнивается) Базис тестирования (с чем сравнивается) ТерминологияОбъект тестирования: Компонент или система, которые должны быть протестированы.Базис тестирования: Документ, на основании которого определяются требования к компоненту или системе. Документация, на которой базируются тестовые сценарии.Если правка данного документа может быть осуществлена только в процессе формальной процедуры внесения изменения, то такой базис тестирования называется замороженным базисом тестирования.Рабочие продукты 1/2Рабочие продукты, поставляемые команде тестировщиков в качестве объектов тестирования, могут быть разными:отдельный модуль компонент (несколько модулей) подсистема система Рабочие продукты 2/2документация с требованиями (маркетинговая, пользовательская, техническая) требования (функциональные , проектные, базы данных) модели, диаграммы, макеты сценарии использования код тестовые планы и сценарии проектная документация по автоматизации тестирования, код автоматизации тестирования другие документы или код |