Главная » Просмотр файлов » Лекции. Тестирование ПО (all in one)

Лекции. Тестирование ПО (all in one) (1186159), страница 20

Файл №1186159 Лекции. Тестирование ПО (all in one) (Лекции) 20 страницаЛекции. Тестирование ПО (all in one) (1186159) страница 202020-08-25СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

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

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

Это позволит минимизировать ущерб отнеобнаруженных в ходе тестирования ошибок.Наконец, дополнительным фактором могут быть трудозатраты на устранение ошибок.Если известно распределение затрат ресурсов на исправление ошибок, возникающих приразличных воздействиях, стоит сделать вероятность воздействия в тесте пропорциональнойтаким затратам. Теоретически, это позволит быстрее найти ошибки, для исправлениякоторых необходимы значительные усилия.Таким образом, распределение вероятностей воздействий во время теста формируетсяпропорционально распределениям вероятностей использования этих воздействий приэксплуатации системы, размеру возможного ущерба от ошибки, вызванной этимивоздействиями и затратам на исправление этих ошибок. Если какие-то из этихраспределений неизвестны, на их месте используются равномерные распределения.Необходимая вероятность выполнения определенного воздействия в тесте вычисляетсякак произведение вероятности его использования на величину возможного ущерба принеправильной работе системы и на величину затрат на устранение ошибки, если она будетобнаружена, деленное на сумму всех таких произведений для всех воздействий.Pa =Pa∑usePb b⋅ Vauserisk⋅ Vb⋅ Variskdebug⋅ Vbdebug,или, в интегральной форме для плотностей вероятностиp=p use ⋅ v risk ⋅ v debug∫puse⋅ v risk ⋅ v debugСтоит, однако, отметить, что в подавляющем большинстве случаев адекватно оценитьвероятности использования различных воздействий, величину возможного ущерба илизатрат на исправления ошибки весьма сложно.

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

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

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

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

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

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

т.п.Пример: если функция имеет три числовых параметра, чаще всего ее областьопределения — область в трехмерном пространстве. Границы первого порядка — этоповерхности, отделяющие область определения и разделяющие ее на подобласти.Границы второго порядка — кривые, по которым пересекаются или соприкасаютсяграницы первого порядка, или которыми они разбиваются на гладкие куски. Границытретьего порядка — точки, являющиеся точками пересечения или касания границвторого порядка, а также отделяющие границы второго порядка друг от друга иразбивающие их на гладкие куски.•Тестовые данные подбираются следующим образом.Областью здесь называется компонента связности одной из выделенных подобластейобласти определения, а также компонента связности границы любого порядка.o Для всякой области должен быть набор значений параметров, лежащийвнутри этой области. Обычно его стараются выбирать где-то «посередине»,ближе к центру масс области.o Для всякой компоненты связности границы любого порядка любой области,если область не включает эту компоненту границы (т.е.

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

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

Тип файла
PDF-файл
Размер
2,8 Mb
Материал
Тип материала
Высшее учебное заведение

Список файлов лекций

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