Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Часть I. Процесс быстрого тестирования. проводить испытания, если методика не содержит необходимых деталей






 

 

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

 

Отдельного рассмотрения заслуживает один специальный случай. Если тест за­ служивает того, чтобы быть автоматизированным, целесообразно выделить время на предварительную разработку детализированной методики тестирования, с помощью которой инженер по автоматизации сможет однозначно сформулировать задачу ав­ томатизации. Расплывчатая методика тестирования, скорее всего, приведет к появ­ лению неточных или неэффективных автоматизированных тестов. Рекомендуемый уровень детализации методики тестирования прояснится после дальнейшего обсуж­ дения ожидаемых результатов.

 

Существует широкий выбор технологий, которые могут использоваться для тес­ тирования программных продуктов. В этой главе мы будем рассматривать техноло­ гии тестирования методом черного ящика. Тестирование методом черного ящика представляет собой тестирование на системном уровне, которое имеет дело только со " внешними" аспектами программы. Тестирование методом черного ящика не предполагает каких-либо знаний о внутреннем функционировании программного продукта и проводится с использованием только внешних интерфейсов, таких как пользовательские интерфейсы или интерфейсы API (Application Programming Inter­ face — интерфейс программирования приложений). Более подробный анализ тести­ рования методом черного ящика можно найти в [17], [15] и [27]. Более подробную информацию о тестировании с использованием метода черного ящика можно найти в главе 10 настоящей книги.

 

 

Двумя широко распространенными технологиями разработки тестов для тестиро­ вания методом черного ящика являются разбиение на классы эквивалентности и ана­ лиз граничных значений. Обе технологии помогают уменьшить общее количество тестовых случаев или проверяемых условий, которые необходимы для полного по­ крытия функциональных возможностей программы. Вполне понятно, что эти методы являются ценной частью понятия быстрого тестирования, ибо чем меньше требуется разрабатывать и прогонять тестов с целью получения того же функционального по­ крытия, тем эффективнее становится тестирование.

 

 

Разбиение на классы эквивалентности. Разбиение на классы эквивалентности пред­ставляет собой технологию проектирования тестов, ориентированную на снижение общего числа тестов, необходимых для подтверждения корректности функциональ­ ных возможностей программы. Основная идея, стоящая за разбиением на классы эк­ вивалентности, заключается в том, чтобы разбить область ввода программы на клас­ сы данных. Если проектировать тесты для каждого класса данных, но не для каждого члена класса, то общее количество требуемых тестов уменьшается.

 

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


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

 

 

• Допустимыми вводами являются все пятизначные наборы цифровых символов, образующих рабочий почтовый код

• Недопустимыми вводами являются:

 

• Наборы цифровых символов, содержащие менее пяти символов

 

• Наборы цифровых символов, содержащие более пяти символов

 

• Наборы из пяти символов, не являющиеся рабочим почтовым кодом

 

• Наборы из нецифровых символов.

 

Аналогичное разбиение может быть построено и для массы брутто отправляемого груза. Например, требуется программа, работающая только с грузами, масса которых находится в диапазоне от 1 до 100 унций. В этом случае числовые значения, попа­ дающие в диапазон от 1 до 100, включая и конечные точки, являются допустимыми. Все значения меньше 1 и больше 100, отрицательные значения и нецифровые значе­ ния образуют недопустимые классы ввода.

 

Нужно спроектировать такие тесты, которые выполняют проверку, по меньшей мере, одного представителя каждого допустимого класса ввода и, по меньшей мере, одного представителя недопустимого класса ввода. В результате тестирования с при­ менением допустимых вводов должны быть получены однозначно определенные и ожидаемые результаты. Для почтового кода 78723 и массы в 20 унций ожидается по­ лучить конкретное значение стоимости, и это значение должно быть определено в функциональных требованиях. В случае ввода недопустимых данных должно быть получено соответствующее сообщение об ошибке, если оно определено в техниче­ ских требованиях и спецификациях. При вводе недопустимых данных программа, по меньшей мере, не должна завершаться аварийно, вызывать искажение данных или вести себя непредсказуемым образом.

 

 

Более подробное обсуждение разбиения на классы эквивалентности можно найти в главе 10, а также в [36], [27], [43], [28] и [17].

 

Анализ граничных значений. Анализ граничных значений представляет собой тех­нологию проектирования тестов, которая является дополнением разбиения на клас­ сы -эквивалентности. Вместо того чтобы выбирать некоторый конкретный элемент класса эквивалентности, анализ граничных значений предлагает проектировщику теста выбрать элементы, которые находятся " на границе" класса. Экспериментально было доказано, что дефекты имеют тенденцию концентрироваться на границе облас­ ти ввода, а не в ее центре. Не особенно ясно, почему так получается, это всего лишь установленный факт.

 

Например, в случае программы, которая для почтового индекса и веса отправляе­ мого груза вычисляет стоимость доставки, анализ граничных значений позволяет применять в качестве тестовых значений минимальное и максимальное значение ве­ са (1 унция и 100 унций), а также ближайшее значение, меньшее минимально допус­ тимого (0 унций), и ближайшее значение, большее максимально допустимого (101 унция). Эти значения позволяют проверить границы диапазона допустимых значе­ ний, а также значения, выходящие за пределы этого диапазона. Более подробную информацию по анализу граничных значений можно найти в главе 10, а также в [36], [27], [43] и [17].







© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.