Главная » Просмотр файлов » Тестирование черного ящика. Б. Бейзер (2004)

Тестирование черного ящика. Б. Бейзер (2004) (1186170), страница 14

Файл №1186170 Тестирование черного ящика. Б. Бейзер (2004) (Тестирование черного ящика. Б. Бейзер (2004).djvu) 14 страницаТестирование черного ящика. Б. Бейзер (2004) (1186170) страница 142020-08-25СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 14)

Какими бы нп были свойства отногпений, они должны проверяться при тестировании. 2.5Я. Проверка узлов Меньшее из всего, что вы можете сделать, — это провести достаточно тестов, для того «тобы убедиться, что все узлы именно такие, какими и должны быть. Такие тесты называ1отся проверкой узлов. У проверки узлов, однако, есть своя градация по степени совершенства тестов. Ниже приводится список тестов (в порядке возрастания приоритета), которые надо провести, чтобы полностью выполнить проверку узлов.

1. Тесты, чтобы убедиться в наличии всех заданных узлов. Ни один узел не должен быть пропущен. 2. Тесты, чтобы убедиться в отсутствии лишних узлов (это может потребовать неограниченного числа тестов и поэтому быть неосуществимо). 3. Тесты, чтобы убедиться в корректности весов узлов, если они есть. 4. Если существуют входной и выходной узлы, то в завершение предыдуших шагов можно выбрать пути от входа до выхода и выбрать входные значения так, чтобы программа проследовала по каждому из заданных в модели путей. Обычно задают несколько таких путей от входа к выходу (тестовых вариантов).

Как уже говорилось, проверка узлов — ато очень слабые тесты, на практике они оказываются настолько слабы, что фактически не используются. Все методы, из:шгаемые в этой книге, предполагают, что вы по меньшей мере выполнили проверку связей (см. ниже). Проверка связей, в свою очередь, подразумевает, что выполнены все тесты проверки узлов. 2.5.5. Проверка связей Следующее по эффективности действие, которое можно сделать, — это провести .юстаточно тестов, для того чтобы убедиться, что все связи именно такие, какигш и должны быть. Такие тесты называются проверкой связей. Ниже приводится список тестов (в порядке возрастания приоритета), которые надо провести, чтобы полностью выполнить проверку связей. 1.

Тесты, чтобы убедиться в наличии всех заданных связей, — что ни одна связь не пропущена. 2. Тесты, чтобы убедиться в отсутствии лишних связей (Это может потребовать неограниченного числа тестов и поэтому быть неосуществимо). 60 Глава 2 ° Графы и отношения 3. Тестирование отношений. ° Если отношение симметрично, то необходимо убедиться, что каждая связь является двустороннеи: например, ООГОИОО.

° Если отношение рефлексивно, то необходимо убедиться, что каждый узел связан сам с собой: например, ОО иотн1иа. ° Если отношение транзитивно, то вы должны проверить его транзитивность в любой ситуации. Это делается следующим образом. Рассмотрим три объекта, А, Б и В, причем А связано с Б, а Б связано с В. То есть А Й Б и Б Й В. Показав (путем тестирования), что А Й Б — истина и Б Й В вЂ” истина, необходимо показать, что А Й В тоже является истиной. Сделайте это для каждой тройки узлов, в которой выполняются данные условия.

4. Если существуют входной и выходной узлы, то шаги 1-3, как правило, завершаются подбором путей от входа к выходу, при этом выбираются такие входные параметры, с которыми программа проследует по выбранным путям. Чаше всего для теста указывают несколько путей ВХОД/ВЫХОД (тестовых вариантов). Заметим, что если вы осуществляете проверку связей, вы обычно осуществляете и проверку узлов. Тем не менее, проверка связей в большинстве случаев требует большего количества тестов, чем проверка узлов.

При тестировании черного ящика, исключая патологические случаи, если вы разрабатываете тесты проверки связей, вы вместе с тем добиваетесь и проверки узлов. Однако вы вряд ли сможете убедиться, что не существует лишних узлов и что веса узлов, если узлы обладают весами, верны. Хорошей идеей будет добавление в проверочный список инспектирования тестов и в ваш проект тестов требования проверки узлов из раздела 2.5.4.

2.5.6. Тестирование весов Если связи имеют веса, проведите достаточное количество тестов, чтобы убедиться в правильности значения веса для каждой связи. То же самое сделайте для узлов, если они включены в модель. 2.5.7. Тестирование циклов Мы уделяем специальное внимание тестированию циклов, так как статистика ошибок показывает, что у программистов возникают проблемы с циклами. По этой причине циклам посвящена целая глава (см. главу 4). В этом разделе излагаются лишь основы. В нашу задачу не входит анализ кола чтобы увидеть, есть в нем циклы или нет. Мы проводим тестирование циклов, если наша модель поведения программы включает в себя циклы. Цикл — это последовательность имен узлов, в которой как минимум одно имя узла повторяется. Если появляется лругая последовательность повторяющихся имен узлов или она просто возможна, то у вас есть еще один цикл.

Вы должны протестировать каждый цикл. 2.6. Резюме 61 Тестирование цикла основано на том, сколько раз вы будете выполнять этот цикл. Вы мо)кете совсем обойти цикл, можете пройти его один раз, два раза.... Максимальное количество проходов обозначим как и. В следующем примере есть узел, который является входом в цикл (А) и два узла, которые являются выходными в цикле (Х и У). 1. Обойдем цикл: лхе или лхтхь. (Я буду использовать оба пути.) 2.

Пройдем цикл один раз: лхтхнхх или лхтхнхтхх. 3. Пройдем цикл два раза: лхтхнхтхнхх или дхтнхтхнхтхх. 4, Пройдем цикл обычное число раз: д1хтхн)' ""хх. 5, пройдем цикл максимальное число раз (и): ихтхн) "хг н х1хтхн) "хтхх. 6. Пройдем цикл и-1 раз: лсхтхн)"чхк и их)хи)" 'хуго.

7. Попытаемся пройти цикл и + 1 раз: л<хтхн)"'хе и л<хтхн)"'хтхе. Рассмотрим два каких-нибудь узла в модели, скажем, А и В. Если существует путь от А к В (не обязательно прямая связь) и другой путь от В к А, и это верно для каждого А и В, то существует возможность, стартуя от любого узла, по какому-то вуги прийти к любому другому узлу и вернуться назад к начальному узлу. Такие ~ рафы называются сильно связанными. Исчерпывающее тестирование цикла, как было определено, обычно является излишней тратой времени в сильно связанных ~рафах.

Очевидно, что граф с симметричными отношениями (или ненаправленный граф) является сильно связанным, так как все стрелки направлены в обе стороны. Следовательно, тестирование циклов не является эффективным для графов с симметричными отношениями. 2.6. Резюме Вы освоили словарь и основную идею поведенческого тестирования. Может быль, материал был изложен более кратко, чем вы бы хотели. Как я уже говорил в КЕАРМЕ.РОС, эта глава — как подпрограмма, которую вы будете использовать х последующих главах при создании конкретных тестов.

Рассматривайте зту глазу как объект в объектно-ориентированных программах, которые вы будете созтавать в последующих главах. ООП, на мой взгляд, более абстрактно, нежели эта пава. Или же рассматривайте эту главу как игру, в которой вы должны победить. Используйте следующие вопросы для оценки того, что вы вынесли из атой главы. 62 Глава 2 ° Графы и отношения 2.7. Вопросы для самопроверки Дайте определение: проходимый путь, несимметричное отношение, двоичное отношение, узел ветвления, оператор ветвления, дерево вызова, комментарий, граф потока управления, проверка (покрытие), оборванная связь, граф потока данных, направленный граф, направленная связь, входной узел, путь вход — выход, класс эквивалентности, отношение эквивалентности, выходной узел, граф, матрица графа, входящая связь, нетранзитнвное отношение, перефлекспвное отношение, связь, проверка связей, представление списка связей, имя связи, вес связи, цикл, нециклический путь, программа, управляемая через меню, узел, проверка узлов, имя узла, вес узла, исходящая связь, параллельные связи, стратегия тестирования путем разбиения, путь, длина пути, нмя пути, сегмент пути, рефлексивное отношение, отношение, петля, соединять, сильно связанный граф, симметричные отношения, граф потока транзакций, транзитивные отношения, непроходимый путь, ненаправленный граф, ненаправленная связь.

Отношения могут быть: симметричными или несимметричными, рефлексивными или нерефлексивными, транзитивными или нетранзитивпыми. Всего насчитывается восемь различных комбинаций. В табл 2.1. приведены примеры каждого типа отношений. Придумайте еше по три примера для каждого типа. Докажите принадлежность каждого к тому или иному типу (то есть протестируйте их). Подсказка: попробуйте использовать Тезаурус Роже. Таблица 2.1.

Примеры отношений Симметричное Рефлекеивное Тренеитивное Примеры любит, грубит, спорит, критикует, владеет выше, длиннее знаком с больше или равен двоюродные сестры, женаты, обручены параллелен, сосед рядом с равен нет нет нет нет нет нет да нет да да нет да нет да нет да нет да да да да Определите, является ли отношение <находится в проекции» транзитивным? Придумайте ситуацию или способ освещения, при котором данное отношение нетранзитивно. Рассмотрите отношение был объединен с с точки зрения его симметричности, рефлексивности, транзитивности. Приведите примеры и контрпримеры, подтверждающие ваши выводы.

Исследуйте следующие отношения (на предмет их симметричности, рефлексивности, транзитивности) и подтвердите свои выводы, продемонстрировав отсутствие контрпримеров: А вызывает Б, А не равно Б, А согласен с Б, А эквивалентен Б, А согласуется с Б, Л совнестии с Б, А несовместим с Б, Л— часть Б, А — вне Б, Алучше, чен Б, А доминирует над Б, А зависит огп Б. Тестирование потока управления 3.1. Обзор В этой главе в качестве основной модели, используемой при разработке тестов, рассматривается граф потока управления'.

С помощью графа потока управления мы будем моделировать различные части формы 1040 декларации о доходах внутренней налоговой службы США (форма 1040 ВНС), сложность тестирования которой сравнима с ее собственной сложностью. В дальнейшем модель будет использована для построения набора тестов по проверке связей. 3.2. Основные термины Внешние термины: алгебра, алгебраический, И (логическое), приложение, язык ассемблера, логическая ветвь, ошибка, оператор ЕА5Е, СОВО1, код, завершать, сложность, вычисление, последовательный, ограничение, противоречие, управление, поток управления, копировать, программа лля решения уравнений, !1СКЛЮЧАЮЩЕЕ ИЛИ (логическое), выполнять, выражение, крайние значения, формальная модель, оператор 1Е, оператор 1Р-ТНЕИ.Еь5Е, оператор, ЛОЖЬ, оператор 60ТО, реализация, ВКЛЮЧАЮЩЕЕ ИЛИ (логическое), приращение, неравенство, экземпляр, прыжок, логика, логическое выражение, логическое значение, ЬОТ(!о-123, сопровождение, матрица, пропущенные требования, модель, ошибка модели, моделирование, имя, естественный язык, вложенный, НЕ ' Ноток управлении задает послеловательиость действий при выполнении программы, он соот- ветствует кепочке операторов программы, последовательно передаюшик друг другу управление к<>м- ы ютером.

Характеристики

Тип файла
DJVU-файл
Размер
3,83 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6451
Авторов
на СтудИзбе
305
Средний доход
с одного платного файла
Обучение Подробнее