Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Часть II. Технологии быстрого тестирования и советы. Для того чтобы можно было прочесть листинг ветвей, потребуется ввести сле дующие определения:
Для того чтобы можно было прочесть листинг ветвей, потребуется ввести сле дующие определения:
• < номер строки> — номер, помещаемый программой в каждую строку кода
• JUMP < номер строки> означает какую-либо форму конструкции GO TO, ENDDO или IF
• THRU < номер строки> включает все строки вплоть до строки < номер строки>
• < номер строки> А означает часть THEN конструкции IF
• < номер строки> В означает часть ELSE конструкции IF
• ЕОР указывает конец ветви
Кроме того, при чтении этого листинга необходимо обратить внимание на пару вычисленных и отображенных значений показателя цикломатической сложности. Число слева определено Томасом Дж. Маккейбом (Thomas J. McCabe) в [31]. Значе ние справа — это показатель цикломатической сложности, определенный Гленфор-дом Дж. Майерсом (Glenford J. Myers) [37] в ответ на первоначальную публикацию Маккейба. Вспомните, что показатель цикломатической сложности — это минималь ное количество отдельных запусков модуля, которое потребуется для хотя бы одно кратного выполнения каждой строки кода. Данная информация может оказаться по лезной при прогнозировании затрат на тестирование. Можно попытаться найти все ветви в одном из таких модулей и прочувствовать ценность описываемого программ ного средства с точки зрения обеспечиваемой им экономии времени.
Большинство теоретиков программирования сходятся во мнении, что свыше по ловины ошибок в новом коде являются результатом ошибок в логике построения ко да. Тестирование ветвей выявляет логическую структуру кода и позволяет тестиров-щику сосредоточить внимание на ее правильности. Однако арсенал специалиста по тестированию не должен ограничиваться только одним этим средством, поскольку строки кода в части THEN конструкции IF всё же могут содержать ошибки, которые приводят к получению неправильных результатов или аварийному прерыванию про граммы.
Кроме того, следует учитывать, что многие ветви в программе являются тупико выми. Это понимают очень немногие тестировщики. Как правило, разработчики, создающие отладочный код, управляют его выполнением при помощи переменной, значение которой по умолчанию устанавливается таким, что отключает отладку. С момента поставки кода и в течение всего времени его использования клиентом это значение по умолчанию остается в состоянии отключенной отладки. В следующем разделе приведена схема снижения трудоемкости выполнения полного тестирования DD-ветвей, основанная на использовании приоритетов.
|