Главная страница
Навигация по странице:

  • Содержание Предисловие 11 Ключевые особенности 11 Структура книги 12 Об авторах 13 Благодарности 14 Часть I. Процесс быстрого тестирования 15

  • Глава 2. Анализ требований и тестирование 35

  • Глава 3. Планирование испытаний 56 Стратегия тестирования 58 Определение объемов тестовых работ 59 Содержание

  • Глава 4. П р о е к т и р о в а н и е и разработка т е с т о в 98

  • Глава 6. В о п р о с ы о б ъ е д и н е н и я п р о ц е с с о в т е с т и р о в а н и я и к а д р о в о г о о б е с п е ч е н и я 142

  • Часть II. Т е х н о л о г и и б ы с т р о г о т е с т и р о в а н и я и с о в е т ы 159 Глава 7. В в е д е н и е в т е х н о л о г и и т е с т и р о в а н и я и с о в е т ы 160

  • Глава 8. С о в м е с т н а я разработка т р е б о в а н и й к п р и л о ж е н и ю (JAR): м е т о д в ы р а б о т к и т р е б о в а н и й с п р и м е н е н и е м

  • Глава 9. Т е х н о л о г и и статического т е с т и р о в а н и я и с о в е т ы 183

  • Глава 10. Т е х н о л о г и и д и н а м и ч е с к о г о т е с т и р о в а н и я и с о в е т ы 211

  • Глава 11. Р а з р а б о т к а и и с п о л ь з о в а н и е показателей т е с т и р о в а н и я : м о д е л и р о в а н и е и п р о г н о з и р о в а н и е о ш и б о к 241

  • Часть III. Примеры выполнения быстрого тестирования 293 Глава 13. Пример формулирования требований 294

  • Глава 14. Пример плана тестирования 313 Набор инструментальных средств управления тестированием. Версия 1.0 315 Глава 15. Примеры проектирования и разработки тестов 328

  • Глава 16. Пример сводного отчета по системным испытаниям 368 Набор инструментальных средств управления тестированием. Версия 1.0 370 Литература 377 Предметный указатель 380

  • 12 Предисловие •

  • Об авторах Роберт Калбертсон (Robert Culbertson)

  • Гэри К о б б (Gary Cobb)

  • Крис Браун (Chris Brown)

  • Процесс быстрого тестирования Понятие о технологии быстрого тестирования Темы, рассматриваемые в главе

  • Вопросы объединения процессов тестирования и кадрового обеспечения 142 Часть П. Технологии быстрого тестирования и советы 159


    Скачать 4.53 Mb.
    НазваниеВопросы объединения процессов тестирования и кадрового обеспечения 142 Часть П. Технологии быстрого тестирования и советы 159
    АнкорKalbertson
    Дата24.02.2022
    Размер4.53 Mb.
    Формат файлаpdf
    Имя файлаKalbertson.pdf
    ТипЛитература
    #372680
    страница1 из 40
      1   2   3   4   5   6   7   8   9   ...   40

    Оглавление
    Предисловие 11
    Часть I. Процесс быстрого тестирования 15
    Глава 1. Понятие о технологии быстрого тестирования 16
    Глава 2. Анализ требований и тестирование 35
    Глава 3. Планирование испытаний 56
    Глава 4. Проектирование и разработка тестов 98
    Глава 5. Системные испытания • 118
    Глава 6. Вопросы объединения процессов тестирования и кадрового обеспечения 142
    Часть П. Технологии быстрого тестирования и советы 159
    Глава 7. Введение в технологии тестирования и советы 160
    Глава 8. Совместная разработка требований к приложению (JAR): метод выработки требований с применением быстрого тестирования 173
    Глава 9. Технологии статического тестирования и советы 183
    Глава Ю.Технологии динамического тестирования и советы 211
    Глава 11. Разработка и использование показателей тестирования: моделирование и прогнозирование ошибок 241
    Глава 12. Технологии оценки трудозатрат на тестирование и советы 264
    Часть I I I . П р и м е р ы выполнения быстрого тестирования 293
    Глава 13. П р и м е р формулирования требований 294
    Глава 14. П р и м е р плана тестирования 313
    Глава 15. П р и м е р ы проектирования и разработки тестов 328
    Глава 16. П р и м е р сводного отчета по системным испытаниям 368
    Литература 377
    Предметный указатель 380

    Содержание
    Предисловие 11
    Ключевые особенности 11
    Структура книги 12
    Об авторах 13
    Благодарности 14
    Часть I. Процесс быстрого тестирования 15
    Глава 1. Понятие о технологии быстрого тестирования 16
    Основные определения в области тестирования программного обеспечения 17
    Что такое быстрое тестирование? 19
    Персонал 20
    Процесс комплексных испытаний 21
    Статическое тестирование 21
    Динамическое тестирование 21
    Разработка стратегии быстрого тестирования 22
    Процесс разработки программного обеспечения 22
    Каскадный процесс тестирования 25
    Анализ требований 26
    Планирование испытаний 28
    Проектирование тестов, реализации и отладка 29
    Системное тестирование 29
    Приемочные испытания 30
    Сопровождение 30
    Связь тестирования и разработки 31
    Что дальше 34
    Глава 2. Анализ требований и тестирование 35
    Процесс формулирования требований 37
    Выявление требований 39
    Определение требований 42
    Спецификация требований 45
    Матрица прослеживаемости требований 47
    Тестирование требований 47
    Критерии, используемые при тестировании требований 49
    Использование прототипов 50
    Тестирование в рамках жизненного цикла эволюционного прототипирования 52
    Что дальше 54
    Глава 3. Планирование испытаний 56
    Стратегия тестирования 58
    Определение объемов тестовых работ 59

    Содержание 7
    Определение подхода к тестированию 62
    Определение критериев тестирования и точек контроля качества 64
    Определение стратегии автоматизации 66
    Определение стратегии тестирования 69
    Архитектура тестов 69
    Инструментальные средства тестирования 71
    Среда тестирования 73
    Конфигурации аппаратных средств тестирования 74
    Оценка трудозатрат на тестирование 75
    Определение задач 77
    Определение трудозатрат 79
    Определение продолжительности задачи и построение графика работ 83
    Оценка рисков, связанных с графиком работ 85
    Подготовка и пересмотр документов, содержащих планы проведения испытаний 86
    Формат плана проведения испытаний 86
    Проверка выполнения плана проведения испытаний 95
    Ч т о дальше 96
    Глава 4. П р о е к т и р о в а н и е и разработка т е с т о в 98
    Разработка тестов 99
    Определение целей теста 102
    Определение спецификаций ввода 103
    Определение конфигурации средств тестирования 103
    Документ проектов тестов 104
    Разработка тестовых случаев 105
    Разработка детализированных методик тестирования 107
    Определение ожидаемых результатов 110
    Установка и очистка — тестирование из известного состояния 110
    Шаблон тестового случая 111
    Управление конфигурацией тестового случая 113
    П е р е с м о т р и отладка тестов 114
    Автоматизация тестовых случаев 115
    Ч т о дальше 116
    Глава 5. Системные испытания 118
    Обнаружение и отслеживание дефектов 120
    Определение состояний дефектов 120
    Базовые характеристики системы отслеживания дефектов 123
    Как составлять сообщения о дефектах 128
    Анализ обнаруженных дефектов 129
    П р о г о н тестов 131
    Вход в системные испытания 131
    Циклы тестирования 132
    Регистрация результатов тестирования 134
    Составление отчетов по результатам тестирования 135
    Отчет о ходе работ по тестированию 136

    8 С о д е р ж а н и е
    Отчет об устранении дефектов 137
    О т ч е т н ы й доклад 138
    Критерий выхода из испытаний и готовность выпуска программного продукта 139
    Ч т о дальше 140
    Глава 6. В о п р о с ы о б ъ е д и н е н и я п р о ц е с с о в т е с т и р о в а н и я
    и к а д р о в о г о о б е с п е ч е н и я 142
    Человеческий ф а к т о р и тестирование 143
    Качества, которыми должен обладать специалист по тестированию, чтобы успешно справляться со своими обязанностями 143
    Характерные ошибки 145
    Как проводить опросы претендентов 147'
    Совершенствование процесса тестирования 149
    Модель развития функциональных возможностей программного обеспечения СММ 150
    Как модель СММ соотносится с быстрым тестированием 153
    Возможности совершенствования процессов 155
    Ч т о дальше 156
    Часть II. Т е х н о л о г и и б ы с т р о г о т е с т и р о в а н и я и с о в е т ы 159
    Глава 7. В в е д е н и е в т е х н о л о г и и т е с т и р о в а н и я и с о в е т ы 160
    Область применения технологий тестирования 160
    Ж и з н е н н ы й цикл разработки 161
    Преимущества быстрого тестирования 164
    Определение статического тестирования 165
    Определение динамического тестирования 166
    Ж и з н е н н ы й цикл дефекта 167
    Формальные этапы тестирования 169
    Обязанности членов команды тестирования 170
    Ч т о дальше 172
    Глава 8. С о в м е с т н а я разработка т р е б о в а н и й к п р и л о ж е н и ю (JAR):
    м е т о д в ы р а б о т к и т р е б о в а н и й с п р и м е н е н и е м
    б ы с т р о г о т е с т и р о в а н и я 173
    Методология JAR 174
    Роль специалистов по тестированию в процессе JAR 181
    Резюме 182
    Глава 9. Т е х н о л о г и и статического т е с т и р о в а н и я и с о в е т ы 183
    Цикломатическая сложность и ее взаимосвязь с выполнением тестирования 184
    П р и м е р представления проекта модуля в виде графа 185
    Формальная оценка 189
    П р и м е н е н и е контрольных перечней 191
    Аудит 192
    И н с п е к ц и и / к р и т и ч е с к и й а н а л и з / экспертные оценки 195
    Распределение ролей и обязанностей в группе выполнения инспекций 195
    Отчетность о процессе выполнения инспекций 198

    Содержание 9
    Показатели процесса инспекции 198
    Использование электронной почты или другого электронного приложения для ускорения процесса инспекции 198
    Формальная в е р и ф и к а ц и я 200
    Языки на основе спецификаций 201
    Автоматизированное доказательство теорем 201
    Средства автоматизации тестирования 202
    Прослеживаемость требований 202
    Программа контроля единиц измерения физических величин 202
    Символьное выполнение 203
    Листинги перекрестных ссылок 204
    Программы улучшенной печати 204
    Средства сравнения версий 205
    Тестирование алгоритмов 205
    Диспетчер тестирования 208
    Базы данных материалов совместного использования 210
    Резюме 210
    Глава 10. Т е х н о л о г и и д и н а м и ч е с к о г о т е с т и р о в а н и я и с о в е т ы 211
    Функциональное тестирование и анализ 213
    Разделение по классам эквивалентности 214
    Анализ граничных з н а ч е н и й 215
    Отрицательное тестирование 215
    Тестирование на основе определения степени риска 217
    Определение полноты охвата ветвей при тестировании 220
    Тестирование случаев использования 224
    Псевдоотладка/видоизменение 226
    Трассировка/трассировка снизу в в е р х / мгновенные дампы/постпечать 227
    Создание точек п р е р ы в а н и я / п р а в к и 228
    Тестирование потока данных 230
    Тестирование на предмет утечек памяти 231
    •Тестирование и н т е р ф е й с а "человек-компьютер" 233
    Тестирование нагрузочной эффективности 234
    Тестирование конфигурации платформы 238
    Резюме 240
    Глава 11. Р а з р а б о т к а и и с п о л ь з о в а н и е показателей т е с т и р о в а н и я :
    м о д е л и р о в а н и е и п р о г н о з и р о в а н и е о ш и б о к 241
    Определение показателей и данных измерений 242
    Использование стандартных показателей для внесения усовершенствований 251
    Показатели тестирования 255
    Плотность ошибок (количество ошибок на тысячу эквивалентных строк кода) 256
    Проектно-ориентированная модель ошибок 257
    Программа оценки ошибок программного обеспечения (SWEEP) 259
    Резюме 263

    10 Содержание
    Глава 12. Технологии оценки трудозатрат на тестирование и советы 264
    Применение математических методов для оценки программного обеспечения 268
    Технология функциональных баллов 287
    Резюме 290
    Часть III. Примеры выполнения быстрого тестирования 293
    Глава 13. Пример формулирования требований 294
    Набор инструментальных средств управления тестированием. Версия 1.0 296
    Глава 14. Пример плана тестирования 313
    Набор инструментальных средств управления тестированием. Версия 1.0 315
    Глава 15. Примеры проектирования и разработки тестов 328
    Набор инструментальных средств управления тестированием. Версия 1.0 333
    Глава 16. Пример сводного отчета по системным испытаниям 368
    Набор инструментальных средств управления тестированием. Версия 1.0 370
    Литература 377
    Предметный указатель 380

    Предисловие
    В данной книге дается описание практического подхода к тестированию программ­
    ного обеспечения, при этом основное внимание уделяется процессам тестирования на фоне стремительного ускорения процесса разработки программного обеспечения.
    Этот подход ориентирован на применение специалистами по тестированию про­
    граммного обеспечения и руководителями тестовых работ. При его описании приво­
    дится множество советов, технологий и примеров, которые могут использоваться для повышения эффективности и сокращения сроков тестирования программного обес­
    печения. Данная книга предназначена и для тех, кто решил начать свою служебную карьеру с тестирования программного обеспечения. Она содержит обширный набор ссылок, которые могут оказаться полезными как для уже сформировавшихся профес­
    сионалов, так и для тех, которые только начинают свою трудовую деятельность.
    Скорость и эффективность разработки программного обеспечения зависят от то­
    го, насколько удачно процесс тестирования вписывается в общий жизненный цикл разработки программного продукта и от эффективности использования технологий тестирования. В книге показано, как увеличить скорость и эффективность тестиро­
    вания, уделив основное внимание следующим вопросам:
    • Начинать жизненный цикл тестирования необходимо одновременно с началом стадии формулирования технических требований, чтобы дефекты можно было обнаруживать как можно раньше и так же рано начинать планирование и реа­
    лизацию тестовых случаев.
    • Применять эффективные технологии статического тестирования, такие как инспекции и сквозной контроль, для тестирования промежуточных продуктов, которые создаются на протяжении жизненного цикла разработки.
    • Применять эффективные технологии динамического тестирования для обна­
    ружения дефектов на стадиях проверки взаимодействия и функционирования компонентов, системных и приемочных испытаний.
    Ключевые особенности
    Повысить эффективность тестирования программного обеспечения помогут сле­
    дующие отличительные особенности данной книги:
    • Основное внимание уделяется настройке процесса тестирования так, чтобы достичь цели наискорейшего выхода на рынок при сохранении качества про­
    граммного продукта.
    • Тестирование программного обеспечения рассматривается в контексте общего жизненного цикла разработки программного обеспечения. Жизненный цикл разработки программного обеспечения рассматривается с точки зрения, вы­
    годной для специалиста по тестированию. Рассматриваются также модели, та­
    кие как построение эволюционных прототипов, а также спиралевидная и тра­
    диционная каскадная модель.

    12 Предисловие
    Представлены технологии статического тестирования, которые могут исполь­
    зоваться для подключения группы тестирования на ранних стадиях жизненно­
    го цикла разработки программного обеспечения. Применение статического тестирования позволяет обнаруживать дефекты на ранних стадиях жизни про­
    граммного продукта и тогда же дает возможность составлять планы проведения испытаний и создавать тестовые случаи.
    • Книга содержит примеры ключевых результатов процесса испытаний.
    Структура книги
    Книга состоит из трех частей и организована следующим образом:
    Часть I. Процесс быстрого тестирования. В этой части даны определения основных понятий и терминов, имеющих отношение к тестированию. В ней описаны про­
    цессы быстрого тестирования, которые тесно интегрированы с общим жизнен­
    ным циклом разработки программного обеспечения. Рассматривается традици­
    онная каскадная модель разработки программных продуктов, равно как и жизнен­
    ные циклы, в основу которых положены инкрементальные поставки и построение эволюционно развивающихся прототипов. Каждая стадия процесса разработки программного продукта исследуется с точки зрения специалиста по тестирова­
    нию, при этом дается описание методов обнаружения и предупреждения дефектов как средств повышения эффективности тестирования.
    Часть II. Технология быстрого тестирования и советы. В этой части подробно описа­
    ны советы и технологии, которые могут быть использованы для внедрения про­
    цесса быстрого тестирования. Здесь представлены методы выявления и анализа технических требований, оценки трудозатрат на тестирование и разработки гра­
    фиков выполнения тестовых работ, проведения инспекций и перепроверок, раз­
    работки тестов типа черного ящика. В этой части обсуждается широкий спектр технологий динамического тестирования, включая функциональный анализ, раз­
    биение на классы эквивалентности, анализ граничных значений, проверка утечек памяти, тестирование случаев использования и характеристик производи­
    тельности.
    Часть III. Примеры выполнения быстрого тестирования. В третьей части приводятся примеры реализации процессов и технологий, которые обсуждались в двух пре­
    дыдущих частях книги. В основе этих примеров лежит набор инструментальных средств управления тестированием (Test Management Toolkit, TMT), который яв­
    ляется чисто учебным приложением. Продукт ТМТ позволяет руководителям тес­
    товых работ и специалистам по тестированию осуществлять планы проведения испытаний, оглашать сообщения о дефектах, результаты тестирования и другую информацию, имеющую отношение к тестированию. В условиях Web-приложений появляется возможность одновременной работы нескольких пользователей над несколькими проектами независимо от их географического удаления друг от друга.

    Предисловие 13
    Существуют четыре рабочих продукта, имеющих отношение к процессу тестиро­
    вания:
    • Документ определения требований
    • План тестирования
    • Спецификация тестовой процедуры
    • Сводный отчет о тестировании.
    Об авторах
    Роберт Калбертсон (Robert Culbertson) имеет опыт работы в технических областях, в сфере разработки и тестирования программного обеспечения, а также опытом ру­
    ководства разработкой различных проектов. Работая в компаниях Cisco Systems,
    Texas Instruments, IBM, в Техасском университете, в компании DSC Communications, он приобрел личный опыт работы с тем, что составляет быстрое тестирование. Ро­
    берт имеет ученые степени бакалавра электротехники и электроники (B.S.E.E.) и ма­
    гистра электротехники и электроники (M.S.E.E.), полученные в Техасском универси­
    тете в Остине, а также степень доктора ф и л о с о ф и и в области электротехники и элек­
    троники от Бирмингемского университета в Англии.
    Гэри К о б б (Gary Cobb) в течение 25 лет поднимался сразу по двум служебным ле­
    стницам, как преподаватель и как специалист, работающий в промышленной зоне города Остин. Он занимался преподавательской деятельностью в Техасском универ­
    ситете в Остине на отделениях математики, компьютерных наук, электротехники и производства компьютеров. Гэри также вел курс мультимедиа-систем на факультете компьютерных наук в Юго-западном университете штата Техас, в котором занимал пост руководителя лаборатории мультимедиа-систем. Его послужной список в про­
    мышленности включает работу на ответственных должностях в компаниях Texas In­
    struments Inc., Lockheed Martin и Dell Computer Corporation. Он читает краткие кур­
    сы в институте качества программного обеспечения при Техасском университете, который выступил спонсором его разработки критериев программного обеспечения, увенчавшейся присуждением ему премии Greater Austin Quality Award (Победитель по качеству в Остине). Гэри имеет степень доктора ф и л о с о ф и и в области математики, полученную в Техасском университете в Остине.
    Крис Браун (Chris Brown) работает в компьютерной индустрии и индустрии про­
    граммного обеспечения более 20 лет. Занимаясь вопросами тестирования, он работал на различных должностях в таких компаниях, как Advanced Micro Devices, Cisco Sys­
    tems, Compaq C o m p u t e r Corporation и IBM. В компании Advanced Micro Devices он отвечал за системные испытания результатов генерации кремниевых компиляторов и за проверку на совместимость всех конфигураций аппаратных и программных средств. В компании C o m p a q Крис отвечал на построение тестовых сценариев и тес­
    тирование прототипов и опытных образцов систем для отделения портативных ком­
    пьютерных продуктов. Будучи сотрудником компании IBM, Крис возглавлял команду тестирования администратора баз данных O S / 2 , администратора передачи данных и администратора локальной сети. Он был президентом/главным администратором в
    Computer Security Corporation, компании, которая поставляла программные средства защиты от вирусов военно-воздушным силам США, а также компаниям Prudential,

    14 Предисловие
    Boeing и другим крупным компаниям и лабораториям. Крис также занимал посты ре­
    гионального менеджера и вице-президента в компании Dataserv C o m p u t e r Mainte­
    nance/BellSouth, где отвечал за техническое обслуживание и ремонт в процессе экс­
    плуатации 40000 компьютеров. Крис имеет степень бакалавра в области электроники и степень магистра по менеджменту.
    Благодарности
    Авторы остаются в неоплатном долгу перед Алом Дейлом (Al Dale), основателем ин­
    ститута SQI (Software Quality Institute — институт качества программного обеспече­
    ния), за его поддержку, оказанную этой книге и серии в целом. Мы также хотели бы выразить свою благодарность Полу Петралия (Paul Petralia) за его моральную под­
    держку в период написания и издания этой книги. Наша признательность распро­
    страняется также и на влиятельных сотрудников института SQI и коллектива изда­
    тельства Prentice Hall за их постоянную поддержку и профессиональную помощь.
    Джессика Болч (Jessica Balch) и весь производственный коллектив компании Pine
    T r e e Composition проделали большую работу, чтобы вдохнуть в книгу жизнь; мы по­
    лучили огромное удовольствие от сотрудничества с ними.
    Роберт Калбертсон хочет выразить благодарность всей своей семье — Терри,
    Шилли и Майклу — они поддерживали своего папу тем, что не были ему помехой во время написания книги. Роберт благодарит свою маму Лорин и брата Лоренса за их неизменную помощь и поддержку. Роберт также выражает свою признательность всем менеджерам, инженерам и преподавателям, которые были для него одновре­
    менно и наставниками, и коллегами в течение многих лет. В частности, эти благодар­
    ности направлены в адрес Боба Маринконза (Bob Marinkonz), Марка Шервуда (Mark
    Sherwood) и многих других.
    Гэри Кобб благодарит свою жену Мерилин за ее терпение и заботу в течение дол­
    гих часов, потребовавшихся для написания его части книги. Он также благодарит своих детей Гленна Кобба, Молли Пирсон, Стивена Кобба и Мередит Макларти за оказанную поддержку. В числе людей, оказавших ему помощь в служебном росте, Гэ­
    ри прежде всего желает поблагодарить своих родителей, преподавателей и коллег по работе.

    Процесс быстрого
    тестирования

    Понятие о
    технологии быстрого
    тестирования
    Темы, рассматриваемые в главе:
    • Основные определения в области тестирования программного обеспечения
    • Что такое быстрое тестирование?
    • Разработка стратегии быстрого тестирования
    • Процесс разработки программного обеспечения
    • Каскадный процесс тестирования
    • Связь тестирования и разработки
    • Что дальше
    За последних два десятилетия компьютерные системы и выполняемое на них про­
    граммное обеспечение проникло во все области человеческой деятельности. Про­
    граммное обеспечение присутствует в автомобилях, духовках, сотовых телефонах, играх и на рабочих местах. Оно является движущей силой бухгалтерских систем, сис­
    тем обмена данными, соединений с Internet. Распространение программных систем достигло такой стадии, когда корпоративные и национальные экономики впадают во все большую зависимость от успешной разработки и доставки программного обес­
    печения.
    По мере возрастания ставок на рынке программного обеспечения, все отчетливей вырисовывается потребность разработки большего числа программных продуктов за меньшие промежутки времени. Это обстоятельство предъявляет повышенные требо­
    вания к разработчикам и тестировщикам программного обеспечения не только в плане ускоренного производства программных продуктов, но и в плане обеспечения должного уровня их качества, которое смогло бы удовлетворить потребителей.
    В силу этого обстоятельства к специалистам по тестированию современного про­
    граммного обеспечения предъявляются следующие основные требования:
    • Необходимо тестировать быстро, соблюдая жесткие сроки поставки про­
    граммных продуктов.

      1   2   3   4   5   6   7   8   9   ...   40


    написать администратору сайта