11
К данной группе можно отнести анализ кода. Данный вид тестирования осуществляется
в основном программистами. Проводят тестирование артефактов разработки программного
обеспечения, таких как требования, дизайн или программный код, проводимое без исполнения
этих артефактов.
Например, с помощью рецензирования или статического анализа.
Статический анализ кода (static code analysis) – это анализ исходного кода,
производимый без его исполнения.
Динамическое тестирование – это тестовая деятельность, предусматривающая
эксплуатацию (запуск) программного продукта.
Динамическое тестирование предполагает запуск программы,
выполнение всех еe
функциональных модулей и сравнение фактического ее поведения с ожидаемым.
Статическое тестирование позволяет обнаружить дефекты, которые являются
результатом ошибки и привести к сбоям в программном обеспечении. Динамическое
тестирование позволяет продемонстрировать непосредственно сбои в программном
обеспечении.
Существует
несколько признаков, по которым принято производить классификацию
видов тестирования.
По знанию системы выделяют:
тестирование «черного ящика» (black box testing);
тестирование «белого ящика» (white box testing);
тестирование «серого ящика» (grey box testing).
Метод чёрного ящика (black box testing, closed box testing) – у тестировщика либо нет
доступа к внутренней структуре и коду приложения, либо недостаточно знаний для их
понимания, либо он сознательно не обращается к ним в процессе тестирования.
Рисунок 1
Разработка тестов методом черного ящика (black box test design technique)
Процедура создания и/или выбора тестовых сценариев,
основанная на анализе
функциональной или нефункциональной спецификации компонента или системы без знания
внутренней структуры.
Техники разработки тестов на основе спецификаций, или методе черного ящика:
эквивалентное разбиение;
анализ граничных значений;
тестирование таблицы решений;
Эквивалентное разбиение (equivalence partitioning)
Разработка тестов методом черного ящика, в которой тестовые сценарии создаются для
проверки элементов эквивалентной области. Как правило, тестовые сценарии
разрабатываются для покрытия каждой области как минимум один раз.
Входные данные для программного обеспечения или системы разбиваются на группы,
от которых ожидается сходное поведение, то есть они должны обрабатываться аналогичным
образом. Эквивалентные области (или классы) могут быть определены как для валидных, так
и для невалидных данных, то
есть тех значений, которые должны отвергаться.
Эквивалентное разбиение применимо на всех уровнях тестирования. Эквивалентное
разбиение может быть использовано с целью покрытия входных и выходных данных. Оно
может применяться при ручном вводе данных, при передаче данных через интерфейсы в
систему, или при проверке параметров интерфейсов в интеграционном тестировании.
12
Анализ граничных значений (boundary value analysis): Разработка тестов методом
черного ящика, при котором тестовые сценарии проектируются на
основании граничных
значений.
Граничное значение (boundary value): Входное значение или выходные данные, которое
находится на грани эквивалентной области или на наименьшем расстоянии от обеих сторон
грани, например, минимальное или максимальное значение области. Анализ граничных
значений может применяться на всех уровнях тестирования
Таблица решений (decision table): Таблица, отражающая комбинации входных данных
и/или причин с соответствующими выходными данными и/или действиям (следствиям),
которая может быть использована для проектирования тестовых сценариев.
Таблицы решений – хороший метод для сбора системных требований, содержащих
логические условия и документирования внутреннего дизайна системы.
Они могут
использоваться для записи сложных бизнес-правил, которые должна реализовывать система.
Анализируются спецификации и определяются условия и действия системы. Входные условия
и действия чаще всего формулируются таким образом, чтобы они могли принимать
логические значения «истина» или «ложь».
Сильной стороной тестирования таблицы решений является то, что она создает
комбинации условий, которые могли бы быть не проверены в
ходе тестирования иным
способом. Этот метод может быть применен ко всем ситуациям, в которых действие
программного продукта зависит от нескольких логических альтернатив.
Задание 1. Написать калькулятор с небольшими багами.
Рисунок 2
Задание 2. Обменяться программой с другими студентами. Провести тестирование и
написать отчет в тетради.
Таблица 2
Назван
ие теста
Описание
сценария
Входные
данные
Выходные
данные
Удачное/неуд
ачное
тестирование
Предложения
по
исправлению
найденных
ошибок.
Пожелания
пользовате
лей
Функци
я
суммы
Сложение
двух
положите
льных
чисел;
Проверка
результата
Первая
переменн
ая=3
Вторая
переменн
ая=8
Результат=
11
Неудачное
-
Поле
для
ввода
значений и
вывода,
объединить
Достарыңызбен бөлісу: