Краткие теоретические и учебно-методические материалы 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Краткие теоретические и учебно-методические материалы



По теме лабораторной работы

Тестирование "белый ящик" выполняется с целью обнаружения проблем во внутренней структуре программы. Это требует от проверяющего глубокого знания внутренней структуры и, следовательно, не может быть выполнено обычным пользователем. Общая задача такого тестирования - обеспечить проверку каждого шага по алгоритму программы. Основное преимущество всех типов стратегий тестирования "белый ящик": при тестировании принимается во внимание структура всей программы, что облегчает обнаружение ошибок даже в том случае, когда спецификации программного обеспечения недостаточно определенные или неполные.
Тестирование по блокам заключается в проверке блока отдельно от остальной системы. Обычно блок представляет собой функцию или небольшой набор функций (библиотеки, классы), которые выполняются одним программистом. Основная отличительная характеристика блока состоит в том, что он достаточно небольшой по объему для проведения тщательной проверки, которую можно назвать исчерпывающей. Обычно тестирование "белый ящик" проводится разработчиками. Небольшой размер блоков позволяет обеспечить высокий уровень проверки кодов. Таким образом легче обнаружить и устранить ошибки на данном уровне тестирования.
Одним из наиболее сложных аспектов разработки программного обеспечения являются интеграция и тестирование больших подсистем. Интегрированная система часто дает существенные и необъяснимые сбои, которые трудно устранить. Тестирование в таком случае состоит в проверке нескольких блоков, которые образуют модуль или подсистему. Тестирование интегрированной системы в основном направлено на интерфейс между блоками, что должно гарантировать совместимость блоков и их корректную совместную работу.

Стратегия Белого ящика включает в себя следующие методы тестирования:

покрытие операторов (подразумевает выполнение каждого оператора программы, по крайней мере, один раз)

покрытие решений (необходимо составить такое число тестов, при которых каждое условие в программе примет как истинное значение, так и ложное значение)

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

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

комбинаторное покрытие условий (все возможные комбинации результатов условий в каждом решении, а также каждый оператор выполнились по крайней мере один раз)

Пример1: Тестирование Белым ящиком

Void m (const float a, const float b, float x){If(a>1) && (b==0)X=X/a;If (a==2)||(x>1)X=X++;}1 если при написании программы в 1-м условии написать а>1 || b=0, то ошибка обнаружена не будет.2 если во 2-м условии вместо x>1 записано x>0,то ошибка тоже не будет обнаружена.3 существует путь a в d,в котором х вообще не меняется и,если здесь есть ошибка, то она не будет обнаружена.

Пример2: Тестирование покрытием условий

Решением будем считать логическую функцию, предшествующую оператору.(а>1 && b=0 – решение). Для реализации этого критерия необходимо достаточное число тестов такое, что каждое решение на этих тестах принимает значение «истина» или «ложь» по крайней мере 1-н раз.Не трудно показать, что критерий покрытия решений удовлетворяет критерию покрытия операторов, но является более сильным. Приведенная программа может быть протестирована по методу покрытия решений двумя тестами, покрывающими, либо путь асе аbc, либо асd и abe.Если мы выбираем 2-е покрытие, то входами 2-ч тестов являются: а=3,b=0, x=3a=2,b=1, x=1если во 2-м условии вместо x>1 записать x<1, то ошибка не будет обнаружена двумя тестами.

 

Задания для лабораторной работы:

Провести тестирования несколькими методами.

 

Контрольные вопросы

 

1.Какие техника белого ящика включает в себя следующие методы тестирования.

2.В чем заключается метод тестирования черным ящиком?.

3.Что такое покрытие решений?.

4.Что такое покрытие операторов?


Лабораторная работа №17-18

«Генерация программного кода диаграммы компонентов

на языке программирования Си++»

Цель работы: получение навыков при генерации кода выбранной диаграммы

Образовательные результаты, заявленные во ФГОС третьего поколения:

Студент должен

уметь:

- владеть основными методологиями процессов разработки программного обеспечения;

- использовать методы для получения кода с заданной функциональностью и степенью качества.

 

знать:

-модели процесса разработки программного обеспечения;

-основные принципы процесса разработки программного обеспечения;

-основные подходы к интегрированию программных модулей;

-основные методы и средства эффективной разработки;



Поделиться:


Последнее изменение этой страницы: 2021-12-07; просмотров: 69; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.118.140.108 (0.009 с.)