Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Предположение об ошибке

Анализ причинно-следственных связей

Анализ граничных значений

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

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

Следует построить тесты, содержащие значения большие и меньшие минимального и максимального значения. Например, если входной файл может содержать от 1 до 255 записей то следует проверить 1, 255 и 0, 256

Если существует ограничение выходных значений, то желательно тестировать и их.

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

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

Данный метод позволяет обнаружить неполноту, и не однозначность исходных спецификаций. Построение тестов осуществляют в несколько этапов, сначала по возможности выделяют в отдельные таблицы независимые группы, причинно-следственных связей. Затем в спецификации определяют множество причин и следствий. Далее на основе анализа, смыслового содержания спецификации строят таблицу истинностей, в которой в каждой возможной комбинации причин, ставятся в соответствие, следствие. Истина – 1, Ложь – 0. Для обозначения безразличных состояний условий принято обозначение x. Которое предполагает произвольное значение 0 либо 1.

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

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

 

Сериализация (сохранение объектов)

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

Сереализация выполняется автоматически, для этого достаточно пометить класс, как сереализуемый, с помощью атрибута [Serealizable]. Атрибуты это дополнительные сведения о классе. Те поля которые сохранять не требуется, помечаются атрибутом [ Noserialized]. Объекты можно сохранять в одном из двух форматов, двоичном или XML файла. В первом случае нужно подключить к программе пространство имен, System.Runtime.Serialization.Formatters.Binary

Во втором подключается пространство System.Runtime.Serialization.Formatters.Soap

Для сохранения объектов в двоичном формате используется класс, BinaryFormatter в котором определены 2 метода.

Serialize – поток объект

Deserialize

Метод Serialize сохраняет заданный объект в заданном потоке. Метод Deserialize восстанавливает объекты из заданного потока.

Для сохранения объекта в двоичном формате, необходимо подключить к программе пространство имен. Пометить сохраняемый класс и связанные с ним классы атрибутом Sererializable. Создать потоки связать его с файлом на диске или с областью оперативной памяти. Создайте объект класса binaryformatter. Сохранить объекты в потоке. Закрыть файл. Создать абстрактный класс Aka содержащий абстрактный метод Print

Создать абстрактный класс book наследник абстрактного класса Aka. В классе book описать поля, названия, автор, цена, создать конструктор. Переопределить метод Print. Создать класс просмотр с полями x и y. Сохранить объекты в двоичном файле.

 

<== предыдущая лекция | следующая лекция ==>
Тестирование программных продуктов | Объектно-ориентированное проектирование
Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 446; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.009 сек.