Научная статья на тему 'Метрики в современном тестировании'

Метрики в современном тестировании Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
609
117
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Рахманов Виктор Юрьевич, Тимченко Б.Д.

Рассматривается процесс тестирования в составе современных CASE-средств, с целью выявления, систематизации и оценки используемых метрик.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Метрики в современном тестировании»

МЕТРИКИ В СОВРЕМЕННОМ ТЕСТИРОВАНИИ В. Ю. Рахманов, Б.Д. Тимченко

Рассматривается процесс тестирования в составе современных СЛ8Б-средств, с целью выявления, систематизации и оценки используемых метрик.

Введение

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

Для демонстрации данного положения рассмотрим У-модель тестирования, в которой стадии тестирования соотносятся с соответствующими стадиями разработки (рис. 1). В результате мероприятия по поиску дефектов сдвигаются на ранние стадии процесса разработки, что позволяет уменьшить затраты на поиск и исправление дефектов в 1111. На рисунке пунктирные линии со стрелками определяют отношение между видом тестовой деятельности и видом проектной деятельности. Например, верхняя пунктирная линия со стрелками показывает, что цель приемочного тестирования заключается в подтверждении требований, а само приемочное тестирование основано на требованиях [4].

Рис. 1. У-модель тестирования

Для оценки и управления качеством при производстве 1111 необходимы метрики, которые должны давать количественные оценки качества конечного продукта. В настоящее время CASE-средства собирают и анализируют некоторые метрики, используемые как для оценки качества 11 , так и для оценки результативности процесса тестирования. К таким средствам, прежде всего, следует отнести Rational Suite компании Rational Software, входящей в состав корпорации IBM с февраля 2003 года, и Together Control Center компании Together Soft, являющейся ныне подразделением Borland. Однако отмечаются проблемы в метрическом обеспечении тестирования, в частности, это касается критериев завершения тестирования. В связи с этим нами предпринят анализ и систематизация метрик, используемых в CASE-средствах.

Метрики тестирования

Множество метрик процесса тестирования в соответствии с [11] будем разделять на два класса: первичные или накопительные метрики и вычисляемые метрики. Накопительные метрики - это числовые значения показателей, полученные на этапе тестирования 1111. Накопительные метрики - это основа анализа тенденций и прогнозирования. К таким метрикам относятся время и стоимость тестирования, количество дефектов. Вычислимые метрики не могут быть получены непосредственно, а вычисляются на основании первичных метрик. Вычислимые метрики в большей степени ориентированы на оценку результативности и эффективности тестирования и используются для мониторинга и контроля за процессом тестирования. Примерами таких метрик являются тестовое покрытие, количество дефектов на строку исходного кода, результативность тестирования [8, 9] В табл. 1 представлены основные первичные метрики.

Название метрики Описание Примечание

Количество дефектов, найденных на этапе тестирования Дефекты, найденные на этапе тестирования, позволяют косвенно оценивать квалификацию разработчиков, а также дополнительные затраты, необходимые на исправление и доработку ПП. Для отслеживания и управлениями дефектами в ПП используются инструментальные средства - Rational ClearQuest, StarTeam, Bagzilla и др.

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

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

Стоимость тестирования Стоимость тестирования включает в себя затраты на поиск дефектов и амортизацию оборудования для проведения тестирования. Вместе со стоимостью исправления дефектов метрика часто используется в качестве критерия прекращения тестирования.

Название метрики Описание Примечание

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

Таблица 1. Первичные метрики

В отличие от первичных метрик, которые, как упоминалось выше, не применяются для управления тестированием, вычислимые метрики позволяют оценить результативность процесса. В табл. 2 представлены вычислимые метрики, используемые в СЛББ-средствах для оценки результативности (качества) процесса тестирования.

Название метрики Описание Примечание

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

Тестового покрытие (полнота тестирования) Тестовое покрытие представляет собой отношение планируемого тестового набора к полному тестовому набору. Это важнейший критерий, который имеет отношение к оценке готовности продукции. Конструктивные методы определения полного тестового набора неизвестны, хотя по этому вопросу имеется большое количество литературы [1, 2]. Практически все, что написано, предполагает структурные методы тестирования, которые позволяют оценить тестового покрытие операторов, условий и логических путей. К сожалению, это громоздкие процедуры, которые имеют ограниченное применение на практике.

Результативность тестирования: Е = Ыг х100, N + N где , Nе - дефекты обнаруженные на этапе тестирования и эксплуатации соответственно. Для оценки результативности (качества) тестирования используется метрика, основанная на отношении количества дефектов, найденных на этапе тестирования, к общему числу дефектов, найденных на этапе тестирования и эксплуатации. Эта важная оценка является апостериорной и используется при анализе результатов тестирования для улучшения процесса тестирования

Таблица 2. Вычислимые метрики

Из сказанного выше видно, что для оценки готовности 1111 в современных СЛББ-средствах используется метрика, основанная на анализе тестового покрытия. Однако существуют проблемы в определении первичных метрик, необходимых для ее вычисления. Существующие метрики, используемые в СЛББ-средствах, в основном сводятся к учету дефектов, времени и затрат и поэтому непригодны для оценки

готовности продукта и тем самым не являются критерием завершения тестирования. Несмотря на это, о применении следует сказать более подробно. В зрелых компаниях по разработке ПО, которые используют в качестве средств управления проектами MS Project 2000 или Primavera Enterprise, эти данные составляют статическую основу для планирования проектов и управления ими. Для примера сошлемся на модель качества CMM, где необходимым условиям является ведение и анализ статистики проекта, которая иногда называется Knowledge Base. Что касается возможных направлений исследований, то внимание концентрируется на оценке рисков в случае неполного тестирования (т.е. управление тестированием с учетом рисков) и исследовании методологий, основанных на попытках поиска наиболее "важных" тестов, т.е. исследовании методов ранжирования тестов в зависимости от важности (приоритетности) требований.

Литература

1. Майерс Г. Искусство тестирования программ. М.: Финансы и статистика, 1982.

2. Липаев В.В. Тестирование программ. М.: Радио и связь, 1986. 296 с.: ил.

3. Липаев В.В. Обеспечение качества программных средств. Методы и стандарты. М.: Синтег, 2001.

4. Калбертсон Р., Браун К., Кобб Г. Быстрое тестирование. М.: Вильямс, 2002.

5. Evarld E. Mills. Software Metrics. // Software Engineering Institute, 1988

6. Pankaj Jalote. Use of Metrics in High Maturity Organizations. // Software Quality Professional, Mach 2002.

7. Dorothy R. Graham. Measuring the Value of Testing. ESCOM, 2nd April 2001

8. Marnie L. Hutcheson. Software Testing Methods and Metrics. http://www.ideva.com

9. Guide of Software Engineering Body of Knowledge. // IEEE Computer Society, May 2001.

10. Testing Metrics - Mercury Interactive, http://model.mercuryinteractive.com/quality/metrics/

11. Rational Unified Process - Rational Software, http://www.rational.com

i Надоели баннеры? Вы всегда можете отключить рекламу.