Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Принципы тестированияСтр 1 из 8Следующая ⇒
Основы тестирования программ Стратегии тестирования Принципы тестирования Тестирование модулей Комплексное тестирование Отладка. Общие принципы. Отладка приложений Технические возможности отладки приложений в ИСР Delphi Варианты компиляции и сообщения компилятора. Окно наблюдения Watches Окно задания списка наблюдения Watch Properties Выполнение приложения по шагам Использование окна Инспектора Отладки Debug Inspector Основы тестирования программ
Тестирование способствует повышению надежности программного обеспечения. Правильное определение тестирования таково: тестирование – это процесс выполнения программы с целью найти ошибки, хотя, к сожалению, достаточно часто используется неправильное определение понятия тестирование - как подтверждение правильности работы программы и демонстрация, что ошибок в программе нет (такое определение в корне меняет цели тестирования). Тестирование - процесс разрушительный. Тест считается удачным, когда с его помощью обнаружена ошибка. Доказательство правильности работы программы в этом случае ведётся от противного: если при выполнении значительного набора хорошо разработанных тестов ошибок не обнаружено, то программа работает правильно, хотя это не значит, что в ней совсем нет ошибок. Тестирование состоит в том, чтобы найти немногочисленные ошибки, оставшиеся в хорошо спроектированной программе. Тестирование (testing) – процесс выполнения программы с целью найти ошибки. Отладка (debugging) – процесс поиска ошибки, наличие которой точно установлено, и исправление этой ошибки, после чего процесс тестирования возобновляется. Тестовые данные продумываются и готовятся заранее. Результаты тестирования являются исходными данными для отладки. Таким образом, тестирование и отладка – это два тесно взаимосвязанных процесса.
Стратегии тестирования Стратегия черного ящика (тестирование с управлением по данным, или тестирование с управлением по входу-выходу). Программа рассматривается как «черный ящик», а тестовые данные используются без учета знаний о внутренней структуре программы, только в соответствии со спецификацией программы. Разработчику известно, что на входе и что должно быть на выходе программы. Такое тестирование имеет целью выяснение обстоятельств, в которых поведение программы не соответствует спецификации. Стратегия «белого» (скорее, прозрачного) ящика - стратегия тестирования, управляемого логикой программы. Она опирается на знание внутренней структуры программы. Тестовые данные готовятся путем анализа логики программы. Подразумевается, что программа проверена полностью, если с помощью тестов удается осуществить выполнение этой программы по всем возможным маршрутам ее потока (графа) передач управления (теоретическое положение). Принципы тестирования Проектирование тестов и тестирование требует творческого подхода Процесс тестирования должен представлять собой попытки обнаружить в программе не найденные ранее ошибки. Тестирование всегда должна выполнять внешняя группа. Это относится и к тестированию системы, и к тестированию внешних функций и даже отдельных модулей. Тестирование более эффективно, если оно выполняется кем-либо другим. Тесты должны готовится как для правильных, так и для неправильных входных данных. Тесты, представляющие неожиданные или неправильные входные данные, часто лучше обнаруживают ошибки, чем «правильные» тесты. И исходные данные, и результаты теста должны быть определены до его выполнения. Отсюда следует что: · необходимо избегать невоспроизводимых тестов, · нельзя тестировать экспромтом. Это не даёт возможности верно оценить результаты. Тестирование программы предполагает детальное изучение результатов каждого теста. Тесты следует документировать и хранить для возможного использования их повторно. Необходимо проверять не только, делает ли программа то, для чего она предназначена, но и не делает ли она то, что не должна делать. Нельзя изменять программу, чтобы облегчить ее тестирование.
Тестирование программного обеспечения охватывает целый ряд действий. Сюда входят: · постановка задачи для теста, · проектирование, · написание тестов, · тестирование тестов · выполнение тестов · изучение результатов тестирования.
Возможен ряд подходов к выработке стратегии проектирования: · тестирование только методом «чёрного ящика» · тестирование только методом «белого ящика» · сочетание обоих методов.
|