Помощь в написании студенческих работ
Антистрессовый сервис

Тестирование и отладка

Реферат Купить готовую Узнать стоимостьмоей работы

Наиболее просто осуществить вставку операторов, которые регистрируют результаты исполнения конкретного оператора. Часто — это распечатка выборочных значений переменных. Кроме того, может осуществляться проверка завершения логических участков программ, результаты выполнения условий и т. п. Такой метод вставок предполагает, что после проверяемых включаются операторы, регистрирующие результаты… Читать ещё >

Тестирование и отладка (реферат, курсовая, диплом, контрольная)

Содержание

  • 1. Тестирование программных продуктов
    • 1. 1. Цель и принципы тестирования
    • 1. 2. Этапы тестирования
    • 1. 3. Методы тестирования программ
  • 2. Отладка программного продукта
    • 2. 1. Понятие и этапы отладки
    • 2. 2. Средства отладки
    • 2. 3. Методы отладки
  • Заключение
  • Список использованной литературы

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

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

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

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

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

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

4. Инверсное прослеживание логики программы. Для небольших программ анализ логики выполнения программы в обратном направлении оказывается довольно эффективным способом обнаружения ошибки. Отладка начинается с точки программы, где обнаружен неверный результат или произошел останов программы. На основе полученных в этой точке значений переменных необходимо определить, исходя из логики программы, какие результаты должны были быть при правильной работе программы. Последовательное продвижение к началу программы позволяет достаточно быстро и точно определить место (и причину возникновения) ошибки, т. е. место между оператором, где результат выполнения программы соответствовал ожидаемому, и оператором, в котором появились расхождения.

Заключение

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

Успех отладки в значительной степени предопределяет рациональная организация тестирования. Как показывает опыт разработки программного обеспечения, трудоемкость отладки превышает суммарную трудоемкость разработки алгоритма, программирования (кодирования) и тестирования. Затраты времени на отладку составляют (по результатам ряда исследователей) от 50 до 80% общего времени разработки программы, поэтому отладку иногда называют искусством обнаружения местоположения ошибок в программе.

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

Системное программное обеспечение / А. В. Гордеев, А. Ю. Молчанов. — СПб: Питер, 2003. — 736 с.: ил.

Благодатских В.А., Волнин В. А., Поскакалов К. Ф. Стандартизация разработки программных средств. Учеб. пособие/Под ред. О. С. Разумова. — М.: Финансы и статистика, 2006. — 288 с.: ил.

Плаксин М. А. Тестирование и отладка программ — для профессионалов будущих и настоящих — М.: Бином. Лаборатория знаний, 2007. — 167 с.

Рудаков А. В. Технология разработки программных продуктов: Учеб. пособие для студ. сред. проф. образования — М.: Издательский центр «Академия», 2005. — 208с.

Индивидуальная отладка программ / Ю. М. Безбородов. — М.: Наука. Главная редакция физико-математической литературы, 2006. — 192 с.: ил.

Искусство тестирования программ / Пер. с англ. Под ред. Б. А. Позина — М.: Финансы и статистика, 2006. — 176 с.: ил.

Показать весь текст

Список литературы

  1. Системное программное обеспечение / А. В. Гордеев, А. Ю. Молчанов. — СПб: Питер, 2003. — 736 с.: ил.
  2. В.А., Волнин В. А., Поскакалов К. Ф. Стандартизация разработки программных средств. Учеб. пособие/Под ред. О. С. Разумова. — М.: Финансы и статистика, 2006. — 288 с.: ил.
  3. М.А. Тестирование и отладка программ — для профессионалов будущих и настоящих — М.: Бином. Лаборатория знаний, 2007. — 167 с.
  4. А.В. Технология разработки программных продуктов: Учеб. пособие для студ. сред. проф. образования — М.: Издательский центр «Академия», 2005. — 208с.
  5. Искусство тестирования программ / Пер. с англ. Под ред. Б. А. Позина — М.: Финансы и статистика, 2006. — 176 с.: ил.
Заполнить форму текущей работой
Купить готовую работу

ИЛИ