Автор работы: Пользователь скрыл имя, 08 Февраля 2015 в 22:04, контрольная работа
История тестирования программного обеспечения отражает эволюцию разработки самого программного обеспечения. В течение длительного времени разработка программного обеспечения уделяла основное внимание крупномасштабным научным программам, а также программам министерства обороны, связанным с системами корпоративных баз данных, которые проектировались на базе универсальной ЭВМ или миникомпьютера.
Введение…………………………………………………………………….3
Тестирование программного обеспечения……………………...….5
Уровни тестирования……………………..…………………………5
Методы тестирования…………..…………………………………...8
Восходящее тестирования………………..…………………………8
Нисходящее тестирование…………………..………………………9
Метод большого скачка…………………………..…………………9
Метод сандвича…………………………..………………………….9
Модифицированный метод сандвича………………………..……10
Метод «Белого ящика»………………………. ……………………10
Метод «Черного ящика»…………………….. …………………….11
Этапы тестирования………………………………………………..13
Виды тестирования……..…………………………………………..14
Заключение…………………………………………………………….….18
Список использованной литературы…………………………………….19
ФЕДЕРАЛЬНОЕ АГЕНСТВО ПО ОБРАЗОВАНИЮ
Московский государственный университет экономики, статистики и информатики
Тверской филиал
Кафедра Информационных технологий,
Естественнонаучных и математических дисциплин
Контрольная работа
по дисциплине: «Программная инженерия»
на тему: «Тестирование программного обеспечения. Уровни тестирования. Методы тестирования. Этапы тестирования. Виды тестирования»
Выполнил: студент 1 курса
заочного отделения
группы Тв-ЗНИ-201Э
Кузьмин Валентин Валентинович
Проверила: Александрова Вера Алексеевна
Тверь 2013
Содержание
Введение…………………………………………………………
Заключение……………………………………………………
Список использованной литературы…………………………………….19
Введение
История тестирования программного обеспечения отражает эволюцию разработки самого программного обеспечения. В течение длительного времени разработка программного обеспечения уделяла основное внимание крупномасштабным научным программам, а также программам министерства обороны, связанным с системами корпоративных баз данных, которые проектировались на базе универсальной ЭВМ или миникомпьютера. Тестовые сценарии записывались на бумагу. С их помощью проверялись целевые потоки управления, вычисления сложных алгоритмов и манипулирование данными. Окончательный набор тестовых процедур мог эффективно протестировать всю систему полностью. Тестирование обычно начиналось лишь после завершения плана–графика проекта и выполнялось тем же персоналом.
Появление персональных компьютеров способствовало стандартизации этой отрасли, поскольку приложения стали изначально создаваться для работы с общей операционной системой. Внедрение персональных компьютеров открыло новую эру и привело к быстрому и бурному росту коммерческих разработок. Коммерческие приложения жестко боролись за первенство и выживание. Пакетная обработка заменялась системами, работающими в реальном времени.
Тестирование систем реального времени потребовало другого подхода к проектированию тестирования из–за того, что рабочие потоки могли вызываться в любом порядке. Эта особенность привела к появлению огромного количества процедур тестирования, способных поддержать бесконечное число перестановок и сочетаний.
Долгое время программные ошибки рассматривали как простые неприятности. В связи со всеобщей компьютеризацией, все шире и шире захватывающей такие важные области, как управление системами жизнеобеспечения, медицинские приборы и сверхдорогую компьютерную аппаратуру, ошибки стало невозможно рассматривать как нечто имеющее значение только на этапах разработки.
Тестирование программного обеспечения (software testing) – это процесс анализа или эксплуатации программного обеспечения с целью выявления дефектов.
Слово процесс (process) используется для того, чтобы подчеркнуть, что тестирование это плановая, упорядоченная деятельность.
Тестирование предусматривает «анализ» или «эксплуатацию» программного продукта. Тестовая деятельность, связанная с анализом результатов разработки программного обеспечения, называется статическим тестированием (static testing). Статическое тестирование предусматривает проверку программных кодов, сквозной контроль и проверку программы без запуска па машине, то есть проверку за столом (desk checks). В отличие от этого, тестовая деятельность, предусматривающая эксплуатацию программного продукта, носит название динамического тестирования (dynamic testing). Статическое и динамическое тестирование дополняют друг друга, и каждый из этих типов тестирования реализует собственный подход к выявлению ошибок.
Важным понятием процесса тестирования является дефект (bug). Дефект – это программная ошибка – изъян в разработке программного продукта, который вызывает несоответствие ожидаемых результатов выполнения программного продукта и фактически полученных результатов. Дефект может возникнуть на стадии кодирования, на стадии формулирования требований или на стадии проектирования, либо же его причина может крыться в некорректной конфигурации или данных.
Отладка – это процесс выявления источников отказов, то есть ошибок, и внесение в программу соответствующих исправлений для их устранения.
Тестирование обычно производится на протяжении всей разработки и сопровождения на разных уровнях. Уровень тестирования определяет «над чем» производятся тесты: над отдельным модулем, группой модулей или системой, в целом. При этом ни один из уровней тестирования не может считаться приоритетным. Важны все уровни тестирования, вне зависимости от используемых моделей и методологий. Различают три уровня тестирования: модульное, интеграционное и системное тестирование.
Модульное тестирование (юнит–тестирование). Данный вид тестирования позволяет проверить на корректность отдельные модули исходного кода программы.
Системное тестирование. Это тестирование программного обеспечения, выполняемое на полной, интегрированной системе, с целью проверки соответствия системы исходным требованиям. Системное тестирование относится к методам тестирования черного ящика, и, тем самым, не требует знаний о внутреннем устройстве системы.