Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Якости.docx
Скачиваний:
3
Добавлен:
17.12.2018
Размер:
102.7 Кб
Скачать
  1. Тести, що базуються на блок-схемі.

Тесты, базирующиеся на блок-схеме (Control-flow-based criteria)

Набор тестов строится исходя из покрытия всех условий и решений блок-схемы. В какой-то степени напоминает тесты на основе конечного автомата. Отличие – в источнике набора тестов.

Максимальная отдача от тестов на основе блок-схемы получается когда тесты покрывают различные пути блок-схемы – по-сути, сценарии потоков работ (поведения) тестируемой системы. Адекватность таких тестов оценивается как процент покрытия всех возможных путей блок-схемы.

  1. Тестування інсталяцій.

  • З назви випливає, що дані тести проводяться з метою перевірки процедури інсталяції системи в цільовому оточенні.

(інфа з лекції)

  1. Зв’язок тестування з іншими видами діяльності по розробці.

  • Тестування ПЗ пов’язане, але відрізняється від, технік керування якістю ПЗ, доведень коректності, відладки та програмування.

  • Тим не менше, воно є інформаційним з точки зору аналітиків якості ПЗ та центрів сертифікації

  • Тестування vs. Статистика технік керування якістю ПЗ

  • Тестування vs. Доведення коректності та Формальна верифікація

  • Тестування vs. Відладка.

  • Тестування vs. Програмування.

  • Тестування та Сертифікація.

  1. Метод білої скриньки.

  • Знання про програмний компонент/структуру

    • Контрольний список виразів чи компонентів

    • Тестування шляхів у коді (потік управління)

    • Тестування залежності по даним (потоки даних)

  • Застосування

    • Тестування на ранніх стадіях

    • Подвійна роль програміста – тестувальника

  • Критерій зупинки

    • В основному задачі покриття

    • Інколи інші задачі по якості та надійності

  1. Рівні тестування (послідовність).

2. Уровни тестирования (Test Levels)

2.1 Над чем производятся тесты (The target of the test)

Тестирование обычно производится на протяжении всей разработки и сопровождения на разных уровнях. Уровень тестирования определяет “над чем” производятся тесты: над отдельным модулем,

группой модулей или системой, в целом. При этом ни один из уровней тестирования не может считаться приоритетным. Важны все уровни тестирования, вне зависимости от используемых моделей и методологий.

2.1.1 Модульное тестирование (Unit testing)

Этот уровень тестирования позволяет проверить функционирование отдельно взятого элемента системы. Что считать элементом – модулем системы определяется контекстом. Наиболее полно

данный вид тестов описан в стандарте IEEE 1008-87 “Standard for Software Unit Testing”, задаю щем интегрированную концепцию систематического и документированного подхода к модульному

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

2.1.2 Интеграционное тестирование (Integration testing)

Данный уровень тестирования является процессом проверки взаимодействия между программнымикомпонентами/модулями. Классические стратегии интеграционного тестирования – “сверху-вниз” и “снизу-вверх” –используются для традиционных, иерархически структурированных систем и их сложно применять, например, к тестированию слабосвязанных систем, построенных в сервисно-ориентированныхархитектурах (SOA).

Современные стратегии в большей степени зависят от архитектуры тестируемой системы и строяться на основе идентификации функциональных “потоков” (например, потоков операций и данных).

Интеграционное тестирование – постоянно проводимая деятельность, предполагающая работу на достаточно высоком уровне абстракции. Наиболее успешная практика интеграционного тестирования базируется на инкрементальном подходе, позволяющем избежать проблем проведения разовых тестов, связанных с тестированием результатов очередного длительного этапа работ, когда количество выявленных дефектов приводит к серьезной переработке кода (традиционно, негативный опыт выпуска и тестирования только крупных релизов называют “big bang”).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]