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

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

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

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

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

Как она порождается (или поступает в систему), как завершается (или 6 Зэк 770 162 Глава б ° Тестирование потоков транзакций выходит из системы), как происходит операция слияния (и с кем), как пог- лощается, расщепляется, порождает другую транзакцию и т. д. 6. Определите гипотетическую контрольную запись для каждого из типов транзакций. Запись должна отображать по меньшей мере тип и состояние транзакции. При этом в большинстве систем по обработке транзакций вы должны быть в состоянии использовать действительную контрольную запись транзакции, реализованную в программном обеспечении.

Для внешних транзакций, — таких как, например, транзакции, обрабатываемые другими системами илн людьми, — вам необходимо будет определить подходящую гипотетическую запись. 7. Идентифицируйте все очереди. Определите для каждой очереди источник (источники) появления транзакций, правило их упорядочения, приоритеты в пределах одного правила, а также применяемую обработку. Протестируйте ограничения всех очередей, которые имеют ограниченные максимально возможные размеры. Каким образом отдельные элементы помещаются в очередь? ° Каким образом отдельные элементы удаляются из очереди? Какая модель очереди используется — односерверная или многосерверная? Если многосерверная, каково правило выбора сервера? 8.

Идентифицируйте компоненты обработки (это не обязательно должно быть программное обеспечение). Сгруппируйте компоненты в соответствии с принципами, описанными выше в разделе 6.3.6. Возможно, потребуется переопределить типы транзакций, выполнить слияние типов транзакций, удалить очереди и т. д., если этот этап моделирования приводит к необходимости группировки нескольких компонентов для того, чтобы удовлетворить критериям раздела 6.3.6. 9. Для каждого из определенных на предыдущем этапе компонентов реши- те, каким образом вы будете тестировать отдельные компоненты. По своей внутренней структуре каждый компонент может представлять собой другую — модель потока транзакций более низкого уровня или же модель иного вида.

10. Несмотря на то, что реальные компоненты не обязательно действуют по добным способом, отделите расщепления(порождения и слияния/поглощения от связанных с ними узлов обработки путем помещения явного узла расщепленияупорождения после обрабатывающего узла и явного узла слияния/поглощения до обрабатывающего узла. 11. После выполнения предыдущих пунктов у вас должен быть набор узлов и связей, определяющих полный набор потоков транзакций, которые необхо- димо протестировать. 12.

Верифицнруйте модель, используя модельную программу, написаннук> на удобном языке программирования. Это может оказаться эффективным в моделях потока транзакций, потому что они чаще всего достаточно велики. 6Я. Методика 163 18. 19. 6.4.2. Иерархия покрытия Как и везде, в этой технике тестирования существует набор практических критериев покрытия, от самых простых (наименее трудоемких и неэффективных) до наиболее эффективных (основательных, но трудоемких). 13.

14. 15. 16. 17. Типичная система по обработке транзакций содержит много простых транз- акций. Говоря «много», я подразумеваю «тысячи». Говоря «простые», я под- разумеваю, что ветвления, соединения, расщепления, порождения, слияния и поглощения очень редки. Определите пути прохождения ваших тестов. Вы можете использовать как отдельные пути в графе, так и порожденные подграфы. Действуйте точно так же, как и при использовании других методик. Активизируйте порожденные подграфы. Предскажите итоги. Определите критерий соответствия.

Выполните тесты. Подтвердите итоги. Проверьте значения во всех промежуточных узлах. Покрытие ввода/вывода и порождения/завершения. Проведите достаточное число тестов и убедитесь, что все старты и порождения транзакций были осуществлены и что были созданы все исходящие транзакции (в том числе порожденные в данной системе). Эти тесты могут показаться слишком слабыми, однако многие системы не проходят даже их.

Рассмотрите все типы транзакций, о которых шла речь выше в разделе 6А.1 (а также те специфические транзакции, о которых я не говорил, но которые существуют в вашем приложении). Это тот минимум, который может сделать разумный человек. Исходя из здравого смысла, это эквивалентно гарантии того, что каждая строка кода была протестирована на уровне компонентов.

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

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

164 Глава 6 ° Тестирование потоков транзакций 3. Покрытие связей. Используя тесты, обеспечивающие покрытие связей, мы проверяем не только корректность отдельных узлов, но и их взаимодействие друг с другом. Без покрытия связей тестирование системы будет неполным. Обеспечивая покрытие связей, мы убеждаемся не только в том, что все транзакции корректно обрабатываются (покрытие узлов делает это за нас), но и в том, что на каждом шаге обрабатываются именно те транзакции, которые и должны.

4. Порожденные подграфы. Понятие порожденного подграфа в этом контексте практически полностью совпадает с аналогичным понятием для потока данных (см, главу 5). Если существуют только узлы ветвления и соединения, то порожденный подграф соответствует пути «вход — выход» в созданной модели. Если существуют узлы порождения или расщепления, то порожденный подграф получается путем следования по всем связям, исходящим из узла порождения или расщепления и дальнейшего следования по пути прохождения этих транзакций до завершающего узла. Если существуют узлы слияния или поглощения, то порожденный подграф получается при следовании вдоль вхолящих связей до точки, где сливающиеся транзакции (или хищник/жертва) порождаются или входят в систему.

Более подробно мы будем говорить о порожденных подграфах в разделе 6.4.4. 6.4.3. Построение модели Я бы предпочел построить модель потока транзакций для налоговой декларации, но, поскольку в процедуре заполнения налоговой декларации отсутствуют транзакции, такая модель не подходит. Возможно, лучшим выбором в данном случае будет модель потока данных.

Однако для того, чтобы использовать налоговые формы в максимально возможном числе упражнений и чтобы показать вам, что почти любу(о модель можно использовать в любом приложении, я буду моделировать Ешр!оуее Вцтйпеьз Ехрепзе (Бизнес расходы наемного служащего), форма 2106. Я буду рассматривать каждый вход нли группу входов так, как если бы они были транзакциями. Ра1 Сба Данные об основных расходах наемного спукащето обрабатываются как единая транзакция. состоящая из.

стропи 2 (раглтпр, со1!з (парковка. подоромныдсбор)). строки 3 (Сгаче). ехс1цШ пр щеа1з апб епсегтатпщепс (коиандировочные расходы, исключая питание и развлечения)), строки 4 (отьег Ьцзтпезз ехрепзез ехс1цщ пр щеа1з апб ептегтатпщеп1 (другие бизнес расходы исключая питание и развлечения)). строки 5 (щеа1з апо епсегсатпщепг (питание и развлечения)). Зто входящая транзакция. то есть транзакция из узла зарокдения От1: С11 Оепега) чем с1е бага (данные об основных транспортных расходах), в тон числе данные иэ строк 11. 12. 13. 15. 18. 19. 20 и 21 Транспортных средств помет быть более одного.

поэтону в этом стартовон узле помет быть от 1 до и наркеров Дпя каждого внесенного транспортного средства пущен один из них. ФР1: С23 Астца) ехрепзез (Фактические расходы> в тои числе введенные в строки 23. 24а. 24Ь и 25. Ван не нумны эти данные, если вы рещили испол~зоват~ стандартную плату за перевозки Тем не менее. вы бгф. Методика 165 иошете выбрать фактические расходы Для этого стартового узла у вас могут быть значения от нуля до п Это число исмет быть иеньше, чем для От1. но не машет быть больше Оергестаттол (Аиортизаттия).

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

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

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

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