Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Часть I. Процесс быстрого тестирования. том на автоматизацию. Однако обычно на автоматизацию задачи уходит намного больше времени, чем на ее выполнение
том на автоматизацию. Однако обычно на автоматизацию задачи уходит намного больше времени, чем на ее выполнение, поэтому для каждой задачи, которая может быть автоматизирована, целесообразно провести тщательный анализ потенциально го выигрыша от автоматизации. Выполняя анализ возможных выгод, следует пом нить, что для самой автоматизации характерен собственный автономный жизненный цикл. Эффективная автоматизация требует специальной подготовки персонала, раз работки, отладки и верификации, как и любой другой проект разработки программ ного обеспечения. Бесплановая и плохо выполненная автоматизация означает не только напрасный расход ресурсов, она даже может привести к нарушению графика выполняемых работ, если время будет тратиться на отладку средств автоматизации, а не на тестирование.
Дастин (Dustin), Рашка (Rashka) и Пауль (Paul) в [15] приводят наиболее распро страненные необоснованные предположения, связанные с применением автомати зированного тестирования, равно как и реальные выгоды, на которые можно рассчи тывать, если автоматизации выполнена правильно и следует строгому процессу. Не обоснованные предположения (ожидания) сведены в табл. 3.1, а достижимые выгоды от автоматизации перечислены в табл. 3.2.
Если вы все-таки решились вложить средства в автоматизацию тестирования, сле дует проанализировать все последствия этого решения в рамках выбранной страте гии тестирования. Например, задача формирования тестовой среды может зависеть от того, как будет осуществляться прогон тестов — в автоматическом или в ручном режиме. Поскольку и для задач, решаемых в ручном режиме, и для задач, решаемых в автоматическом режиме, необходимо приобретать одни и те же аппаратные средст ва, соединять их между собой кабелями, подключать к компьютерным сетям и вво дить их в эксплуатацию, возможно, имеет смысл сделать автоматизированную тесто вую среду постоянно действующей конфигурацией. Подобный подход позволит вы полнять автоматизированные тесты без вмешательства со стороны оператора. Если предполагается выполнять прогон автоматизированных тестов в рамках регрессив ных испытаний или для целей технического обслуживания, имеет смысл построить специализированную стационарную испытательную установку, которая будет нахо диться на рабочей площадке весь период, пока поддерживается программный про дукт. Однако такое решение влечет за собой существенное увеличение расходов на установку соответствующих аппаратных средств и на помещения, в котором распола гается испытательный стенд. В случае неавтоматизированного режима тестирования конфигурация технических средств создается по ходу дела.
Другая проблема, связанная с разработкой стратегии автоматизации, имеет отно шение к процессу. Хорошо известно, что тестирование программного обеспечения должно быть сформированным до принятия решения по поводу автоматизации. Тер мин " сформированный" означает, что тестирование интегрировано в жизненный цикл программного обеспечения, что в основу целей испытаний и тестовых случаев положены требования, и что существует автономная организация тестов. Попытка использовать автоматизацию в условиях хаотичного процесса тестирования едва ли окажется успешной. Автоматизацию лучше всего внедрять как часть непрерывного процесса совершенствования процесса тестирования, но не применять подход " большого взрыва", требующий автоматизации всего и сразу. (Более подробную инфор мацию, касающуюся совершенствования процесса тестирования, можно найти в главе 6).
Таблица 3.1. Необоснованные ожидания от автоматизированного тестирования (по материалам [15])
|