Использование информации о стоимости тестов и серьезности ошибок в процессе приоритезации тестов

Рассмотрено использование информации о стоимости тестов и серьезности ошибок в процессе приоритезации в регрессивном тестировании. Описаны способы оценки стоимости тестов и серьезности ошибок. Приведены новые методы приоритезации и метрика для оценки их эффективности. Исследовано применение описанны...

Full description

Saved in:
Bibliographic Details
Date:2008
Main Author: Малышевский, А.Г.
Format: Article
Language:Russian
Published: Навчально-науковий комплекс "Інститут прикладного системного аналізу" НТУУ "КПІ" МОН та НАН України 2008
Subjects:
Online Access:https://nasplib.isofts.kiev.ua/handle/123456789/14680
Tags: Add Tag
No Tags, Be the first to tag this record!
Journal Title:Digital Library of Periodicals of National Academy of Sciences of Ukraine
Cite this:Использование информации о стоимости тестов и серьезности ошибок в процессе приоритезации тестов / А.Г. Малышевский // Систем. дослідж. та інформ. технології. — 2008. — № 4. — С. 63-80. — Бібліогр.: 19 назв. —рос.

Institution

Digital Library of Periodicals of National Academy of Sciences of Ukraine
_version_ 1859660074195091456
author Малышевский, А.Г.
author_facet Малышевский, А.Г.
citation_txt Использование информации о стоимости тестов и серьезности ошибок в процессе приоритезации тестов / А.Г. Малышевский // Систем. дослідж. та інформ. технології. — 2008. — № 4. — С. 63-80. — Бібліогр.: 19 назв. —рос.
collection DSpace DC
description Рассмотрено использование информации о стоимости тестов и серьезности ошибок в процессе приоритезации в регрессивном тестировании. Описаны способы оценки стоимости тестов и серьезности ошибок. Приведены новые методы приоритезации и метрика для оценки их эффективности. Исследовано применение описанных методов и метрики, а также влияние выбора стоимости тестов и серьезности ошибок на приоритезацию. This work has examined introducing information on test costs and fault severities into test case prioritization in regression testing. Methods to estimate test costs and fault severities are presented. New prioritization techniques and a metric to measure their efficiency are demonstrated. The application of these techniques and the metric, and also the influence of selecting test costs and fault severities on prioritization have been investigated. Розглянуто використання інформації про вартість тестів і серйозність помилок у процесі пріоритезації у регресивному тестуванні. Описано способи оцінювання вартості тестів та серйозності помилок. Наведено нові методи пріоритезації та метрика для оцінки їх ефективності. Дослідженно застосування описаних методів і метрики, а також вплив вибору вартості тестів та серйозності помилок на пріоритезацію.
first_indexed 2025-11-30T09:35:45Z
format Article
fulltext  А.Г. Малышевский, 2008 Системні дослідження та інформаційні технології, 2008, № 1 631 УДК 004.415.53 ИСПОЛЬЗОВАНИЕ ИНФОРМАЦИИ О СТОИМОСТИ ТЕСТОВ И СЕРЬЕЗНОСТИ ОШИБОК В ПРОЦЕССЕ ПРИОРИТЕЗАЦИИ ТЕСТОВ А.Г. МАЛЫШЕВСКИЙ Рассмотрено использование информации о стоимости тестов и серьезности ошибок в процессе приоритезации в регрессивном тестировании. Описаны способы оценки стоимости тестов и серьезности ошибок. Приведены новые методы приоритезации и метрика для оценки их эффективности. Исследовано применение описанных методов и метрики, а также влияние выбора стоимости тестов и серьезности ошибок на приоритезацию. ВВЕДЕНИЕ Одним из методов проверки, удовлетворяет ли программа заданным требо- ваниям и ее спецификации, является тестирование (выполнение программы и проверка ее поведения на соответствие спецификациям). Каждый тест из набора тестов T, использующегося в тестировании, состоит из множества входных значений (сценариев тестирования). Обычно набор тестов создает- ся, исходя из некоторого множества правил, называемого критерием адек- ватности. Этот критерий выражает условия, которым должен удовлетворять набор тестов [1]. На стадии сопровождения программы многократно ис- пользуется регрессивное тестирование, проверяющее, что внесенные в про- грамму модификации не только изменили программу в соответствии с но- выми спецификациями и исправили найденные ошибки, но и не внесли новых ошибок [1]. В регрессивном тестировании растет набор тестов, увеличивая стои- мость и продолжительность тестирования. Например, одна из систем ПО из 20 000 строк кода требует семь недель для тестирования при использовании всех тестов в наборе. Во многих случаях в процессе регрессивного тестиро- вания можно использовать только подмножество набора тестов для провер- ки модифицированной программы. Но иногда бывает сложно или не допус- кается использование неполного набора тестов, например, для программ, надежность которых является критичной (авионика или управление меди- цинским оборудованием). В данном случае для уменьшения стоимости рег- рессивного тестирования может быть применен иной подход: тесты упоря- дочиваются (приоритезируются) для регрессивного тестирования таким образом, чтобы более важные из них выполнялись в первую очередь. Вопросам приоритезации уделено много внимания [2–12]. В методах приоритезации тесты сортируют таким образом, чтобы эффективнее дос- тичь заданной цели, например, наиболее быстрого покрытия операторов программного кода, функций программы в порядке частоты их использова- ния или подсистем в порядке частоты их сбоев в прошлом. Возможная цель приоритезации — увеличение скорости выявления ошибок набором тестов в процессе тестирования. Возросшая скорость выявления ошибок может А.Г. Малышевский ISSN 1681–6048 System Research & Information Technologies, 2008, № 1 64 обеспечить более раннюю обратную связь с регрессивно тестируемой сис- темой и позволить разработчикам начать поиск местонахождения ошибок, а также их исправление раньше, чем это было бы возможно в ином случае. Такая обратная связь обеспечивает выявление ранних признаков того, что заданные цели еще не достигнуты, и позволяет принимать стратегические решения о сроках реализации на ранних этапах. Повышенная скорость об- наружения ошибок увеличивает вероятность того, что в случае преждевре- менного прекращения процесса тестирования тесты, обеспечивающие наи- большую способность выявлять ошибки в сроки, выделенные на тестирование, уже были выполнены. В работах [4–6 , 8, 12] представлена метрика APFD, которая определяет скорость выявления ошибок во время выполнения набора тестов в заданном порядке, и показано, что она может быть использована для оценки скорости выявления ошибок в наборах тестов числовыми значениями и их после- дующего сравнения. В этих работах описано несколько методов приорите- зации для увеличения скорости выявления ошибок в регрессивном тестиро- вании и эмпирически оценена их эффективность. Результаты оценки показали, что несколько методов могут улучшить значения APFD наиболее простыми (и дешевыми) методами. Несмотря на то, что разработанные ранее методы приоритезации и мет- рика APFD успешно применялись, в них содержалось допущение о том, что не только стоимость каждого теста одинакова, но и все ошибки одинаково серьезны. (В работе [3] кратко описывается метод приоритезации, в котором учитывается информация о стоимости тестов.) Такое допущение может быть приемлемо. В некоторых случаях — это чрезмерное упрощение [13,14]. Какие-то тесты просто могут обнаружить ошибку в исходных дан- ных и немедленно прекратить выполнение программы, другие же — выпол- нить долгие многочасовые вычисления. Аналогично в некоторых случаях один тест требует значительных ресурсов (оборудования, расходных мате- риалов или времени программистов), тогда как другой не требует ничего, кроме компьютерного времени. По иному сценарию выполнение всех тестов может быть коротким, но затраты на проверку результатов работы програм- мы значительно различаться. Таким образом, оценивая сравнительную цен- ность тестов, необходимо учесть эти различия в их стоимости. Как и в слу- чае с тестами, ошибки могут быть различными по серьезности. Незаметная для пользователей грамматическая ошибка в интерфейсе программы может привести к неправильному функционированию управляемого устройства, что, в свою очередь, привести к катастрофе. Известными примерами явля- ются потеря космических аппаратов для исследования Марса (Mars Polar Lander, Mars Climate Orbiter) и ракетоносителя Ariane, а также получение смертельной дозы радиации на аппарате лучевой терапии Therac-25. Серь- езность ошибок также может быть важным компонентом ценности выяв- ляющего их теста. На практике стоимость тестов и серьезность ошибок могут значительно различаться, а методы, разработанные для улучшения очередности выпол- нения тестов и сама метрика APFD могут не дать удовлетворительных ре- зультатов. Поэтому в данной статье рассматриваются не только новые мето- ды приоритезации, учитывающие как стоимость тестов, так и серьезность Использование информации о стоимости тестов и серьезности ошибок … Системні дослідження та інформаційні технології, 2008, № 1 65 ошибок, но и новая обобщенная метрика для измерения скорости их выяв- ления ошибок, учитывающая различающиеся стоимости тестов и серьезно- сти ошибок, а также приводятся результаты применения этих методов для разных распределений стоимости тестов и серьезности ошибок. Прежде всего для анализа приоритезации необходимо оценить количе- ственно ее эффективность. МЕТРИКА APFD В работах [4–6, 12] использовалась метрика APFD (weighted average of the percentage of faults detected), оценивающая скорость выявления ошибок на- бором тестов в интервале от 0 до 100. Чем больше значение метрики, тем быстрее выявляются ошибки. Однако данная Ограниченность Метрики APFD Мметрика APFD основывается на двух допущениях: 1) все ошибки иден- тичны по серьезности и 2) все тесты идентичны по стоимости. Эти допуще- ния выражаются в том, что данная метрика просто определяет процент вы- явленных ошибок для выполненной части набора тестов. Следующие примеры поясняют проблемы с этими двумя допущениями. Пример 1. Рассмотрим сценарий, показанный на рис. 1. В метрике APFD, когда все десять ошибок одинаково серьезны и все пять тестов равны по стоимости, порядки A–B–C–D–E и B–A–C–D–E являются эквива- лентными с точки зрения скорости выявления ошибок. Т.е., если поменять Рис. 1. Примеры, иллюстрирующие метрику APFD: а — тесты и выявленные ими ошибки; б — APFD для приоритезированного набора тестов Т1; в — APFD для приоритезированного набора тестов Т2; г — APFD для приоритезированного набора тестов Т3; д APFD для приоритезированного набора тестов Т4 xxxE xD xxxxxxxC xxxxB xxA 10987654321 Ошибка Тест xxxE xD xxxxxxxC xxxxB xxA 10987654321 Ошибка Тест 20 40 60 80 0,2 0,4 0,6 0,8 1,00 0 100 П ро це нт вы яв ле нн ы х ош иб ок Выполненная часть набора тестов Порядок тестов: A-B-C-D-E Площадь = 50% 20 40 60 80 0,2 0,4 0,6 0,8 1,00 0 100 П ро це нт вы яв ле нн ы х ош иб ок Выполненная часть набора тестов Порядок тестов: C-E-B-A-D Площадь = 84% a б 20 40 60 80 0,2 0,4 0,6 0,8 1,00 0 100 П ро це нт вы яв ле нн ы х ош иб ок Выполненная часть набора тестов Порядок тестов: E-D-C-B-A Площадь = 64% в г д 0 0 0 1Площадь = 76% 1Выполненная часть набора П ро це нт в ы яв ле нн ы х ош иб ок 1 1Порядок тестов E-C-B-A- D 0 А.Г. Малышевский ISSN 1681–6048 System Research & Information Technologies, 2008, № 1 66 местами тесты A и B, скорость выявления ошибок не изменится. Эта равно- ценность отражается в эквивалентных значениях метрики APFD (50%). (Значение метрики соответствует площади, ограниченной кривой.) Допус- тим, что стоимость теста B в два раза превосходит стоимость теста A, тре- бующего два часа машинного времени, тогда как тест A — один час. С точ- ки зрения ошибок, выявленных за час, порядок тестов A–B–C–D–E предпочтительней порядка B–A–C–D–E , который выявляет ошибки быст- рее. Однако метрика APFD считает эти два порядка равноценными. Пример 2. Работая опять со сценарием, показанным на рис. 1, предпо- ложим, что все пять тестов имеют равную стоимость и что ошибки 2…10 имеют значение серьезности, равное k , тогда как ошибка 1 имеет серьез- ность k2 . В данном случае тест A выявляет одну более серьезную ошибку и одну менее серьезную, тогда как тест B — только две менее серьезные ошибки. С точки зрения скорости выявления суммарной серьезности оши- бок порядок тестов A–B–C–D–E предпочтительней порядкау B–A–C–D–E. Но снова метрика APFD оценивает эти два порядка одинаково. Пример 3. Примеры 1 и 2 демонстрируют ситуации, в которых метрика APFD оценивает два порядка тестов, как эквивалентные, а интуиция пока- зывает, что они не должны быть таковыми. Также возможна ситуация, когда при неодинаковой стоимости тестов или серьезности ошибок, метрика APFD дает более высокую оценку худшему порядку тестов. Предположим (рис. 1), что все десять ошибок равнозначны по серьезности и что каждый из тестов A, B, D и E требует один час для выполнения, но тест C — десять ча- сов. Метрика APFD порядку тестов C–E–B–A–D order присвоила значение APFD 84% (рис. 1, г). Рассмотрим иной порядок test case order E–C–B–A–D (рис. 1, д). Так как данная метрика не дифференцирует тесты согласно их стоимости, то все вертикальные столбики на графике (индивидуальные тес- ты) имеют одинаковую ширину. Значение APFD для данного порядка 76% ниже значения для порядка C–E–B–A–D. Однако с точки зрения ошибок, выявленных за единицу времени, второй порядок (E–C–B–A–D) предпочти- тельнее: он выявляет три ошибки в течение первого часа и остается лучшим, чем первый порядок, до конца выполнения второго теста. Аналогичный пример может быть приведен для использования ошибки с неравной серьез- ностью при равной стоимости тестов. НОВАЯ COST-COGNIZANT МЕТРИКА APFDC Примеры и Мотивация The пПримеры подсказывают, что метрика, которая предполагает равную стоимость тестов и равную серьезность ошибок, может давать неудовлетво- рительные результаты. Важно понимать: существует компромисс между стоимостью тестов и стоимостью невыявленных в программе ошибок. По- этому, следует учесть этот компромисс в процессе приоритезации тестов. Метрика для оценивания порядков тестов должна содержать факторы, ле- жащие в основе компромисса. В данной работе такая метрика оценивает по- рядки тестов, пропорционально скорости выявления единиц серьезности Использование информации о стоимости тестов и серьезности ошибок … Системні дослідження та інформаційні технології, 2008, № 1 67 выявленных ошибок на единицу стоимости тестов. Автором создана такая метрика (адаптированная APFD). Назовем ее APFDC. Создание новой метрики требует двух изменений (рис. 1). Во-первых, на горизонтальной оси на графике заменим «Выполненная часть набора тес- тов» на «Процент суммарной затраченной стоимости тестов». Теперь каж- дый тест в наборе представлен интервалом вдоль горизонтальной оси, и длина его пропорциональна доли стоимости данного теста в суммарной стоимости тестов в наборе. Во-вторых, на вертикальной оси графика заме- ним «Процент выявленных ошибок» на «Процент суммарной серьезности выявленных ошибок». Теперь каждая ошибка, выявленная набором тестов, представлена интервалом вдоль вертикальной оси, и высота его пропорцио- нальна доли ее серьезности в общей сумме серьезности ошибок. Здесь стои- мость теста и серьезность ошибки могут быть интерпретированы и измере- ны по-разному. Если время выполнения теста (подготовки, самого выполнения и проверки результатов) является основной составляющей стоимости теста, то оно может быть достаточным для ее измерения. Однако стоимость теста может также базироваться на таких факторах, как стои- мость оборудования и зарплата персонала. Аналогично серьезность ошибки также может быть измерена соответственно времени, необходимому для выявления и исправления ошибки, либо можно учесть стоимость потери бизнеса, судебных исков или ущерб, причиненный людям или собственно- сти, и т. д. В любом случае метрика APFDC позволяет учесть такие интер- претации. (Заметим, что в метрике APFDC С учетом этой новой интерпретации на графиках вклад теста взвешива- ется в горизонтальном направлении по его стоимости и вдоль вертикального направления по суммарной серьезности выявленных им ошибок. В таких графиках кривая ограничивает большую площадь для порядка тестов, кото- рый демонстрирует больше единиц серьезности ошибок, выявленных на единицу стоимости теста. Эта площадь и составляет нашу новую метрику APFD мы не пытаемся предсказать стоимость тестов и ошибок, что может быть достаточно сложно, а пытаемся лишь измерить их постфактум для оценки различных порядков тестов.) C На рис. 2 показаны графики для каждого из трех примеров, описанных выше. Пара графиков, расположенная слева (рис. 2,а), соответствует приме- ру 1: верхний график — метрика APFD . C для порядка тестов test case order A–B–C–D–E , нижний — APFDC для порядка order B–A–C–D–E. Отметим, что оригинальная метрика APFD не различила бы эти два порядкаorders, а APFDC отдает предпочтение порядкуfaster-detecting order, A–B–C–D–E, который быстрее выявляет ошибки. Другие пары графиков иллюстрируют применение метрики APFDC в примерах 2 и 3. Пара графи- ков на рис. 2, б, соответствующая примеру 2, показывает, что новая метрика дает более высокую оценку порядку тестов, который раньше выявляет более серьезную ошибку (A–B–C–D–E), при допущении, что ошибкам 2…10 присвоено значение серьезности 1 и ошибке 1 — значение серьезности 2. Пара графиков на рис. 2, в, соответствующая примеру 3, показывает, что А.Г. Малышевский ISSN 1681–6048 System Research & Information Technologies, 2008, № 1 68 новая метрика различает порядки тестов, где test case orders тест C имеет высокую стоимость: вместо недооценивания порядкаorder E–C–B–A–D метрика теперь присваеивает ейму большее значение, чем порядкуorder C– E–B–A–D. Формула для новой метрики Пусть T будет набором, содержащим n тестов со стоимостями nttt ,,, 21  ; F — множеством m ошибок, выявленных набором тестов T ; nfff ,...,, 21 — значениями серьезности этих ошибок. Пусть iFT будет пер- вым тестом в порядке T ′ набора T , который выявляет ошибку i . Тогда формула для метрики CAPFD будет иметь следующий вид [15]: ∑∑ ∑ ∑ == = =                 − = m i i n i i m i TF n TFj ji C ft ttf i i 11 1 2 1 APFD . П ро це нт с ум м ар но й се рь ез но ст и вы яв ле нн ы х ош иб ок П ро це нт с ум м ар но й се рь ез но ст и вы яв ле нн ы х ош иб ок П ро це нт с ум м ар но й се рь ез но ст и вы яв ле нн ы х ош иб ок Процент суммарной затраченной стоимости тестов Процент суммарной затраченной стоимости тестов Процент суммарной затраченной стоимости тестов Порядок тестов: A–B–C–D–E Порядок тестов: C–E–B–A–D Порядок тестов: A–B–C–D–E П ро це нт с ум м ар но й се рь ез но ст и вы яв ле нн ы х ош иб ок П ро це нт с ум м ар но й се рь ез но ст и вы яв ле нн ы х ош иб ок П ро це нт с ум м ар но й се рь ез но ст и вы яв ле нн ы х ош иб ок Процент суммарной затраченной стоимости тестов Процент суммарной затраченной стоимости тестов Процент суммарной затраченной стоимости тестов Порядок тестов: B–A–C–D–E Порядок тестов: E–C–B–A–D Порядок тестов: B–A–C–D–E а б в Рис. 2. Примеры, иллюстрирующие метрику APFDС: а — для примера 1; б — для примера 2; в — для примера 1 Использование информации о стоимости тестов и серьезности ошибок … Системні дослідження та інформаційні технології, 2008, № 1 69 ОЦЕНКА СТОИМОСТИ ТЕСТОВ Существует две задачи, связанные со стоимостью тестов: 1) измерение или оценка стоимости с целью вычисления значения метрики CAPFD для по- рядка тестов и 2) оценивание стоимости для использования при приоритеза- ции тестов. Стоимость теста связана с ресурсами, затраченными на его вы- полнение и проверку результатов. Возможны различные объективные метрики, например: когда основную часть стоимости составляет машинное время или время персонала, стоимость теста может измерять фактическое время, затраченное на тестирование программы заданным тестом. Другая метрика учитывает денежные затраты на выполнение теста и проверку ре- зультатов. Она может отражать амортизированнуюamortized стоимость оборудования, зарплату, стоимость материалов для тестирования, потери дохода от задержки выпуска ПО, от срыва сроков релизации и т. д. Определить стоимость тестов относительно просто после тестирования, что приемлемо для метрики APFDC ОЦЕНКА ESTIMATING SEVERITYСЕРЬЕЗНОСТИ ОШИБОК . Для этого следует знать, observe какие ресурсы затрачены на каждый тест. Однако гораздо сложнее оценить стои- мость перед началом тестирования, а это ноужно для использования ее в процессе приоритезации тестов, т.е. необходимо предугадать predict стои- мость тестов. Одним из подходов является анализ теста и программного ко- да, выполненного тестом. Другим подходом, который используется в этой работе, является использование данных о стоимости тестов на предыдущих сессиях тестирования (что представляется возможным при рнегрессивном тестировании). Полагаем, что стоимость тестов значительно не меняется от одной версии программы к другой. Как и со стоимостью тестов, существует два подхода к серьезности ошибок: 1) их измерение или оценка в метрике APFDC для определения порядка тес- тов и 2) оценка ошибок для использования информации при приоритезации тестов. Серьезность ошибки связана с понесенными затратами, если она ос- талась в программе после реализации. Возможны различные подходы к из- мерению такой серьезности. • Измерение серьезности ошибки как суммы средств, потерянных в ре- зультате сбоя, вызванного данной ошибкой (с учетом его вероятности). Та- кой подход можно применять в ПО, где сбой приводит к катастрофическим последствиям, например, человеческим жертвам, судебным искам, потере оборудования. • Оценка влияния ошибки на надежность ПО. Применяется к ПО (на- пример, текстовый редактор для ПК), где ошибки вызывают всего лишь не- удобство для пользователей, и маловероятно, что сбой будет иметь серьез- ные последствия (например, снижение надежности ПО, приводящее к потере клиентов). Аналогично ситуации со стоимостью тестов, нас интересует как оценка серьезности ошибок до их обнаружения, так и оценка их серьезности после обнаружения. Когда тестирование закончено и уже есть информация об А.Г. Малышевский ISSN 1681–6048 System Research & Information Technologies, 2008, № 1 70 ошибках, можно оценить их серьезность для использования в метрике APFDC (хотя это не так просто, как со стоимостью тестов). С другой сторо- ны, перед началом тестирования нам необходимо оценить серьезность по- тенциальных ошибок для использования данной информации в процессе приоритезации, а это намного сложнее, чем оценка стоимости тестов. Таким образом, требуется метрика, связывающая тесты с серьезностью выявлен- ных ошибок. Если бы мы знали, какие ошибки выявляет каждый тест и их серьез- ность, было бы несложно связать тесты с серьезностью ошибок. Однако на практике эта информация недоступна до завершения тестирования. Сущест- вует два подхода к такой оценке: 1) оценка критичности модулей и 2) оцен- ка критичности тестов. При оценивании критичности модуля необходимо связать severityсерьезность ошибки с критичностью модуля (или любого другого компонента программного кода, например, основногоbasic блока, функции, файла или объекта), в котором данная ошибка может содержаться. При оценивании критичности теста необходимо связать тесты с severityсерьезностью ошибок, которые они могут выявить напрямую. Оценив критичность модулей или тестов, мы надеемся включить incorporate серьезность ошибок в процесс приоритиезации тестов, прежде чем начнется сам процесс тестирования. В данной работе используется оценка критично- сти модулей. ПРИМЕР ИСПОЛЬЗОВАНИЯ ИНФОРМАЦИИ О СТОИМОСТИ ТЕСТОВ И СЕРЬЕЗНОСТИ ОШИБОК Введение Для практического применения предложенной метрики и некоторых моди- фикаций ramifications ее использования нами проведено исследование, цель которого изучить, investigate как различные распределения distributions стоимости тестов и severityсерьезности ошибок могут влиять на скорость их выявления измеряемой метрикой APFDC. Понятие критичности модуля применялось для оценки стоимости ошибок в приоритезации.The study Рассмотрено examined влияние различных распре- делений distributions стоимости тестов, severityсерьезности ошибок и их комбинаций на относительную эффективность методов приоритезации. Объект использования Как объект данного исследования использовалась программа space, разрабо- танная Европейским космическим агентством и состоящая из 6218 строк кода (space — это интерпретатор языка для задания конфигурации массива ADL), а также 50 наборов тестов, адекватных покрытию ветвлений. Создано и применено 29 версий данной программы с некоторым количеством оши- бок в каждой [15].. Методы пПриоритезации Выбраны следующие методы приоритезации [14, 15]: Использование информации о стоимости тестов и серьезности ошибок … Системні дослідження та інформаційні технології, 2008, № 1 71 • fn-cov-ccmult-fb сортирует тесты по дополнительному покрытию критичности функций. Другими словами, ценность тестов вычисляется как сумма критичности покрытых ими функций (но при этом еще покрытых ра- нее упорядоченными тестами). Если более чем один тест имеет наибольшую сумму, то тест, покрывающий наибольшее количество непокрытых функ- ций, считается лучшим. • st-cov-ccmult-fbые-сщм-ссьгде-аиЖ похож на ые-сщм-ссьгде-аи fn- cov-ccmult-fb, но вместо покрытия по функциям используется покрытие по операторам (критичность операторов равна критичности содержащих их функций). • \techfnficovccmultfb\ (fn-fi-cov-ccmult-fb похож на fn-cov-ccmult- fb, но вместо суммирования критичности покрытых функций каждое сла- гаемое еще умножается на индекс ошибки [16], аппроксимирующий уровень склонности функции к содержанию ошибок [17, 18].), • а также random метод упорядочивает тесты случайным образом. Распределения стоимости тестов Мы случайным образом присвоили стоимость тестам соответственно пяти распределениям. 1. Unit. Стоимость каждого теста равна единице, что соответствует си- туации, в которой стоимость тестов не учитывается. 2. Random. Стоимость тестов равномерно распределена на интервале от 1 до 10. 3. Normal. Стоимость тестов нормально распределена с 5=µ 5=µ и 5=σ 5=σ , но ограничена интервалом [1, 10]. 4. Mozilla. Распределение стоимости тестов соответствует ее распреде- лению по четырем категориям в программе Mozilla (табл. 1Таблицу \ref{table_cost_cognizance_mozilla}).(Mozilla — это иИнтернет-браузер с от- крытым кодом. См. www.mozilla.org. и budzilla. mozilla.org.) 5. QTB. Распределение стоимости тестов соответствует ее распределе- нию по двум категориям в программе QTB (табл. 2Таблицу \ref{table_cost_cognizance_stk}) [19]. Т а б л и ц а 1 . {table_cost_cognizance_mozilla}Распределение стоимости тестов в программе Mozilla NameНазвание Уровеньleve l Описаниеdescription ПроцентPer centage HTML 1 Наименьшая стоимостьLeast expensive 87 Printing 2 Большая — // — //more expensive 1 Smoke tests 3 Высокая — //— //expensive 2 Buster 4 Наибольшая — //— //most expensive 10 Таблица 2. \label{table_cost_cognizance_stk}Распределение стоимости тес- http://www.mozilla.org/� А.Г. Малышевский ISSN 1681–6048 System Research & Information Technologies, 2008, № 1 72 тов в программе QTB Уровеньlevel Описаниеdescription ПроцентPercentage 1 Низкая стоимостьnot expensive 88 10 Высокая —//— //expensive 12 Для того чтобы задействовать apply каждогое распределенияе стоимо- сти тестов (кроме unit) сгенерировано множество стоимостей, элементы ко- торых были случайным образом присвоены тестам. Распределение сSeverityерьезности Оошибок Мы использовали три следующих распределения severityсерьезности оши- бок: 1. Unit. Все ошибки имеют серьезность, severities равнуюые единице, что соответствует случаю, в котором серьезность severities ошибок не учи- тывается. 2. Линейное Mozilla-lin. severities Соответствует распределению в программе Mozilla (табл. 3Таблицу \ref{table_cost_cognizance_mozillafaults}) по шести уровням. Значения серьезности присвоены по линейной шкале от 1 до 6. 3. Экспоненциальное Mozilla-exp. Подлобно линейному Mozilla-lin, но в нем значения серьезности присвоены по экспоненциальной шкале от 20 до 25 Т а б л и ц а 3 . label{table_cost_cognizance_mozillafaults}Распределение серьезностиSeverity ошибок в Ппрограмме Mozilla . Уровень по линейной шкале Уровень по экспоненциальной шкале Серьезность Процент 1 1 Тривиальная 2 2 2 Мелкая 11 3 4 Средняя 6 4 8 Крупная 76 5 16 Критическая 4 6 32 Блокирующая 2 Использование Applying распределения серьезности ошибок unit severity ошибок тривиіально по сравненпию с applying два распределениея- ми по Mozilla-lin и Mozilla-exp труднее. Сложность состояла в том, что на- ши методвы приоритезации содержали информацию о критичности моду- лей, но не имели никаких исторических данных для оценки estimation критичности модулей. Таким образом, требовалось сгенерировать как кри- тичность модулей, так и severityсерьезность ошибок. Если присвоить кри- тичность модулям и серьезность severities ошибкам независимо, то взаимо- связь маежду severities ними не будет отражена. Существование такой взаимосвязи является необходимым требованием prerequisite для методов приоритезации, которые используют критичность модулей для в предсказа- ниия severityсерьезности ошибок. Вместо этого в нвашем подходе мы до- Использование информации о стоимости тестов и серьезности ошибок … Системні дослідження та інформаційні технології, 2008, № 1 73 пустили, что существует корреляция между критичностью модулей и серь- езностью содержащихся в них severities ошибок. Затем, полагаясь на это до- пущение, сгенерировали значения критичности модулей и severityсерьезности ошибок. Для использования каждого распределения severityсерьезности ошибок (кроме распределения unit) сгенерировано множество значений критичности для каждого заданного распределения, и случайным образом эти значения были randomly присвоены модулям, после чего мы considered каждойую ошибкуе f ибыло присвоено значение severityсерьезности, равное критичности содержащего ее модуля. Такой подход не позволяет анализировать и объективно сравнивать ме- тоды приоритиезации fairly, если, конечно, unless наши исследования не ог- раничены conditional следующей гипотезой : существует значительнаяclose корреляция между критичностью модуля и severityсерьезностью содержа- щейся в нем ошибкии. Однако данная работа направлена не на оценку эф- фективности performance метолдов приоритезации, а на оценку влияниея распределений серьезности ошибок severityна значения метрики APFDC.Поэтому, представляя результаты, мы condition our conclusions to reflect this methodology. Комбинации рРаспределений Сстоимости Ттестов и серьезности Severity Оошибок При пяти различных распределениях стоимости тестов и трех распределе- ниях severityсерьезности ошибок можно создать пятнадцать комбинаций. Однако ограничимся девятью наиболее иньтересными (табл. 4, «X» указы- вает Indicate на Ррассмотренные в Иисследованиях КкомбинацииТаблицу \ref{table_cost_cognizance_combinations}). Entries }Т а б л и ц а 4 . Комбинации \label{table_cost_cognizance_combinations}распределения Severityсерьезности Оошибок (слева) и versus РСстоимости Ттестов (свер- ху) Unit Random Normal Mozilla QTB Unit X X X X X Mozilla-lin X X Mozilla-exp X X Результаты ИисследованийД Сгруппируем результаты исследований в три этапа. Сначала проанализиру- ем влияние распределений стоимости тестов, используя различные методы приоритезации, при unit распределении severityсерьезности ошибок unit. Затем effects of — влияние распределений severityсерьезности ошибок, используя различные методы приоритезации, при unit распределении стоимости тестов unit. В конце проанализируем по- следствия комбинаций effects of распределений для стоимости тестов и severityсерьезности ошибок вместе. Варьирование Рраспределения Сстоимости тестов А.Г. Малышевский ISSN 1681–6048 System Research & Information Technologies, 2008, № 1 74 На рис. 3Рисунок \ref{figure_cost_cognizance_study1_resfig1} показаны зна- чения APFDC для различных распределений стоимости тестов. Здесь видны пять групп столбиков — одна соответствует значениям APFDC, усреднен- ным для всех методов приоритезации (слева), а четыре группы — усреднен- ным значениям APFDC, по одной группе на каждый метод приоритезации. Группа содержит пять индивидуальныхindividual столбиков — по одному на распределение. Высота столбика определяет denotes среднее значение APFDC, измеренное для наборов тестов, приоритезированных соответст- вующим методом и соответственно заданному распределению [13]. Как видно из рис. 3, распределение стоимости тестов влияет impact на скорость выявления ошибок приоритезированного набора тестов в соответ- ствии с метрикой APFDC для всех методов приоритезации собранных вместе (группа столбиков слева). Эти различия были статистически значимыми, однако не оказались такими большими, как ожидалось: средние значения APFDC для различных распределений отличались не более чем на один про- цент. Также видно (внутри каждой из within each of the четырех групп four rightmost sets столбиков справа), что степень влиянияextent of the impact для разных методов была неодинакова. Например, для метода st-cov-ccmult-fb различия между средними значениями APFDC для разных распределений были статистически значимыми, тогда как для метода fn-fi-cov-ccmult-fb — нет. Рис. 3. Средние значения APFDC для per каждого распределениея и каждого , per метода приоритезации A PF D C Использование информации о стоимости тестов и серьезности ошибок … Системні дослідження та інформаційні технології, 2008, № 1 75 Анализ был выполнен для средних значений APFDC. Исследование же индивидуальных различий в значениях APFDC показывает yields иную кар- тину. Графики на рис. 4Рисунке \ref{figure_cost_cognizance_study1_resfig2} дают абсолютную разницу в значениях APFDC приоритезированных набо- ров тестов с unit распределением стоимости тестов unit и приоритезирован- ных наборов тестов с остальными unit четырьмя распределениями стоимо- сти тестов (графики от A до D, соответственно). На каждом графике горизонтальная ось содержит 2000 наблюдений APFDC На рис. 4Рисунок \ref{figure_cost_cognizance_study1_resfig2} видно, насколько для индивидуальных приоритезированных наборов тестов значе- ние APFD — одно на каждый из 50 приоритезированных наборов тестов для каждой из десяти версий и для каждого из четырех методов приоритезации. Наблюдения отсортирова- ны по методам в следующем порядке: fn-cov-ccmult-fb, st-cov-ccmult-fb, fn- fi-cov-ccmult-fb, random, а затем по набору тестов и версиям. (Сплошные вертикальные линии на графиках разделяют наблюдения по четырем мето- дам.) C для распределения стоимости тестов unit отличается от значе- ний APFDC каждого другого распределения. Во многих случаях разница в значениях APFDC превышает 20%, а в некоторых — 50%. Это дает допол- нительные аргументы в поддержку необходимости использования распре- деления стоимости тестов как составной части метрики APFDC (в против- U ni t– R an do m U ni t– N or m al U ni t– M oz ill a U ni t– –Q TB Observations Absolute differences: Unit vs Random Observations Absolute differences: Unit vs Normal Observations Absolute differences: Unit vs Mozilla Observations Absolute differences: Unit vs QTB Рис. 4. Абсолютные различия в значениях APFDC по всем наблюдениям между распределением unit и каждым из четырех оставшихся распределений стоимости тестов А.Г. Малышевский ISSN 1681–6048 System Research & Information Technologies, 2008, № 1 76 ном случае это может привести к неэффективной приоритезации). Кроме того, при unit распределении стоимости тестов unit значения APFDC экви- валентны значениям оригинальной метрики APFD, что показывает величину различий метрик APFD и APFDC. Рисунок \ref{figure_cost_cognizance_study1_resfig2} При использовании методов fn- cov-ccmult-fb и st-cov-ccmult-fb распределения стоимости тестов exhibited более непостоянны в значениях APFDC ВРисунку \ref{figure_cost_cognizance_study1_resfig1} методе random в среднем для каждого распределения стоимости тестов все методы приорите- зации дали provided значительные улучшения в оценках значений APFD , чем при других методах (st-cov- ccmult-fb проявил наибольшее непостоянство). Отсюда следует, что для не- которых методов поведение распределений более предсказуемо, predictable чем для других. C (см. рис. 3). Таким образом, независимо от распределения стоимости тестов, приоритезация улучшила скорость выявления ошибокrate of fault detection. Varying Распределение Severity Ошибок Варьирование распределения серьезности ошибок Проведенный анализ распределений severityсерьезности ошибок показыва- ет, что распределение имеет значительное влияние на значения APFDC для всех методов приоритезации (рис. 5)Рисунком \ref{figure_cost_cognizance_study1_resfig3}. На рис. 5 изображены три груп- пы диаграмм размаха (по одной на метод). В группе содержится одна диа- грамма размаха для каждого из трех распределений severityсерьезности ошибок. Индивидуальная individual диаграмма размаха показывает распре- деление значений APFDC для всех наборов тестов, приоритезированных со- Рис. 5. Распределения значений icse01/newFigs/fs.enc.eps \caption{\label{figure_cost_cognizance_study1_resfig3}APFD$_C$ (по одному на рас- A PF D C MOZ EXP Рис. 5. Распределения значений icse01/newFigs/fs.enc.eps \caption{\label{figure_cost_cognizance_study1_resfig3}APFD$_C$ (по одному на рас- A PF D C MOZ EXP Использование информации о стоимости тестов и серьезности ошибок … Системні дослідження та інформаційні технології, 2008, № 1 77 ответствующим методом и соответствующим распределением severityсерьезности ошибок. Как видно из рис. 5, fn-fi-cov-ccmult-fb показал наиболее стабильное поведение среди всех распределений, а также exhibited более высокую эф- фективность приоритезации. Однако метод rRandom наиболее склонен к вариациям распределений и показал наихудшие результаты. Варьирование распределения стоимости тестов и серьезности ошибок Проанализировав влияние вариации распределений стоимости тестов и severityсерьезности ошибок в отдельности, рассмотрим результаты, полу- ченные варьированием обеих распределений одновременно. Для каждой из интересующей нас комбинации распределений приме- ним метод st-cov-ccmult-fb и представим значения APFDC На рис. 6Рисунок \ref{figure_cost_cognizance_study1_resfig4} показана диаграмма рассеяния для представления трех комбинированных распреде- лений: 1) стоимость тестов unit и severityсерьезность ошибок unit, 2) стои- мость тестов Mozilla-lin и severityсерьезность ошибок Mozilla, 3) стоимость тестов Mozilla-exp и severityсерьезность ошибок Mozilla. У каждой отобра- женной точки значение лишь 50 случай- ным образом выбранных наблюдений (из 500). x x соответствует значению APFDC при распределе- нии unit-unit и значение y соответствует значению APFDC при одном из двух распределений. Значения APFDC при распределении unit-unit сущест- венно отличаются от значений APFDC при других распределениях. Это оче- видно из большогго разброса на графиках для обоих распределений Mozilla (рис. 6). Выбор различных комбинаций распределений стоимости тестов и severityсерьезности ошибок имеет влияние impact на метрику APFDC. Для дальнейшей иллюстрации различий между распределениями на рис. 6 также показаны линии регрессии. Можно заметить, что комбинация Рис. 6. Диаграмма рассеяния icse01/newFigs/q3b eps\label{figure cost cognizance study1 resfig4}значений A PF D C APFDC for unit- unitMOZ EXP Рис. 6. Диаграмма рассеяния icse01/newFigs/q3b eps\label{figure cost cognizance study1 resfig4}значений А.Г. Малышевский ISSN 1681–6048 System Research & Information Technologies, 2008, № 1 78 распределений Mozilla и Mozilla-exp дает наивысшие значения APFDC, но с приближением значений APFDC ВЫВОДЫ к 100 обе комбинации распределений, ха- рактеризующих программу Mozilla, сходятся. Предложены методы приоритезации и метрика APFDC, учитывающие стои- мость тестов и серьезность ошибок. It Исследованы влияние вариации ком- бинации распределений и scale шкал (например, линейной или экспоненциальной), применяющихся для представления информации о стоимости тестов и серьезности ошибокinformation, механизмы путей использования incorporating такой ин- формации в методах приоритезации, а также подходы к получению этой estimating информации. Описано, как различные методы и распределения влияют на метрику APFDC и как эти методы сравниваются друг с другом compare to each other в зависимости от различных распределенийscales. По- казано, как распределения, шкалы scales и другие факторы влияют на исход приоритезации. Определено, что выбор распределения и шкалы scale дол- жен быть сделан на основе анализа, содержащего оценку серьезности severities ошивбок и стоимости тестов в реальной среде (которые нам пока еще недоступны). Автор благодарит Г. Ротермела и С. Элбаума за участие в проведении описанных исследований. ЛИТЕРАТУРА 1. Ghezzi C., Jazayeri M., Mandrioli D. Fundamentals of Software Engineering. — Upper Saddle River: Prentice Hall, 1991. — 573 p. 2. Avritzer A., Weyuker E.J. The automatic generation of load test suites and the as- sessment of the resulting software // IEEE Transactions on Software Engineer- ing. — 1995. — 21, № 9. — Р. 705–716. 3. Wong W., Horgan J., London S., Agrawal H. A study of effective regression testing in practice // In Proceedings of the Eighth International Symposium on Software Reliability Engineering. — Albuquerque, NM, USA. — 1997. — P. 230–238. 4. Rothermel G., Untch R., Chu C., Harrold M.J. Test case prioritization: an empirical study // In Proceedings of the International Conference on Software Mainten- ance. — Oxford, England, UK. — 1999. — P. 179–188. 5. Elbaum S., Malishevsky A., Rothermel G. Prioritizing test cases for regression testing // In Proceedings of the International Symposium on Software Testing and Anal- ysis. — Portland, Oregon. — 2000. — Р. 102–112. 6. Rothermel G., Untch R.H., Chu C., Harrold M.J. Test case prioritization // IEEE Transactions on Software Engineering. — 2001. — 27, № 10. — Р. 929–948. 7. Jones J.A., Harrold M.J. Test-suite reduction and prioritization for modified condi- tion/decision coverage // In Proceedings of the International Conference on Soft- ware Maintenance. — Florence, Italy. — 2001. — Р. 92–101. 8. Elbaum Sebastian, Malishevsky Alexey G., Rothermel Gregg. Test Case Prioritiza- tion: A family of empirical studies // IEEE Transactions On Software Engineer- ing. — 2002. — 28, № 2. — P. 159–182. Использование информации о стоимости тестов и серьезности ошибок … Системні дослідження та інформаційні технології, 2008, № 1 79 9. Srivastava A., Thiagarajan J. Effectively prioritizing tests in development environ- ment // In Proceedings of the International Symposium on Software Testing and Analysis. — Via di Ripetta, Rome – Italy. — 2002. — Р. 97–106. 10. Kim J.-M., Porter A. A history-based test prioritization technique for regression test- ing in resource constrained environments // In Proceedings of the International Conference on Software Engineering. — Orlando, Florida, USA. — 2002. — Р. 119–129. 11. Srikanth H. Value-driven system level test case prioritization // Ph.D. Dissertation — North Carolina State University, Releigh, NC. — 2005. — 92 p. 12. Малышевский А.Г. Приоритезация тестов в регрессивном тестировании // Системні дослідження та інформаційні технології. — 2006. — № 4. — С. 16–32. 13. Elbaum S., Malishevsky A., Rothermel G. Incorporating Varying Test Costs and Fault Severities into Test Case Prioritization // Technical Report 00-60-09. — Computer Science Department. — Oregon State University. — August 2000. — 14 p. 14. Elbaum S., Malishevsky A., Rothermel G. Incorporating varying test costs and fault severities into test case prioritization // In Proceedings of the 23rd International Conference on Software Engineering. — Toronto, Ontario, Canada. — May 2001. — P. 329–338. 15. Malishevsky A.G. Test case prioritization // Ph.D. Dissertation. — Oregon State University, Corvallis, Oregon, USA. — 2003. — 291 p. 16. Elbaum S.G., Munson J.C. Code churn: A measure for estimating the impact of code change // In Proceedings of the International Conference on Software Mainten- ance. — Bethesda, MD, USA. — 1998. — Р. 24–31. 17. Khoshgoftaar T.M., Munson J.C. Predicting software development errors using com- plexity metrics // Journal on Selected Areas in Communications. — 1990. — 8, № 2. — Р. 253–261. 18. Munson J.C. Software measurement: Problems and practice // Annals of Software Engineering. — 1995. — 1, № 1. — Р. 255–285. 19. Elbaum S.G., Munson J.C. Software evolution and the code fault introduction process // Empirical Software Engineering Journal. — 1999. — 4, № 3. — Р. 241–262. Ghezzi C., Jazayeri M., Mandrioli D. Fun- damentals of Software Engineering. — Upper Saddle River: Prentice Hall, 1991. — 573 p. Avritzer A., Weyuker E.J. The automatic generation of load test suites and the assessment of the resulting software // IEEE Transactions on Software Engineering. — 1995. — 21, № 9. — Р. 705–716. Wong W., Horgan J., London S., Agrawal H. A study of effective regression testing in practice // In Proceedings of the Eighth In- ternational Symposium on Software Reliability Engineering. — Albuquerque, NM, USA. — 1997. — P. 230–238. Rothermel G., Untch R., Chu C., Har- rold M.J. Test case prioritization: an empirical study // In Proceedings of the Interna- tional Conference on Software Maintenance. — Oxford, England, UK. — 1999. — P. 179–188. А.Г. Малышевский ISSN 1681–6048 System Research & Information Technologies, 2008, № 1 80 Elbaum S., Malishevsky A., Rothermel G. Prioritizing test cases for regression testing // In Proceedings of the International Symposium on Software Testing and Analysis. — Portland, Oregon. — 2000. — Р. 102–112. Rothermel G., Untch R.H., Chu C., Har- rold M.J. Test case prioritization // IEEE Transactions on Software Engineering. — 2001. — 27, № 10. — Р. 929–948. Jones J.A., Harrold M.J. Test-suite reduction and prioritization for modified condition/decision coverage // In Proceedings of the International Conference on Software Maintenance. — Florence, Italy. — 2001. — Р. 92–101. 1. Elbaum Sebastian, Malishevsky Alexey G., Rothermel Gregg. Test Case Prioritization: A family of empirical studies // IEEE Transactions On Software Engineering. — February 2002. — 28, № 2. — P. 159– 182. Srivastava A., Thiagarajan J. Effectively prioritizing tests in development environment // In Proceedings of the International Symposium on Software Testing and Analysis. — Via di Ripetta, Rome – Italy. — 2002. — Р. 97–106. 2. Kim J.-M., Porter A. A history-based test prioritization technique for regression testing in resource constrained environments // In Proceedings of the International Conference on Software Engineering. — Orlando, Florida, USA. — 2002. — Р. 119–129. Srikanth H. Value-driven system level test case prioritization // Ph.D. Dissertation – North Carolina State University — Releigh, NC. — 2005. — 92 p. 3. Малышевский А.Г. Приоритезация тестов в регрессивном тестировании // Системні дослідження та інформаційні технології. — 2006. — № 4. — С. 16–32. 4. Elbaum S., Malishevsky A., Rothermel G. Incorporating Varying Test Costs and Fault Severities into Test Case Prioritization // Technical Report 00-60-09, Computer Science Department, Oregon State University, August, 2000. — 14 p. 5. Elbaum S., Malishevsky A., Rothermel G. Incorporating varying test costs and fault severities into test case prioritization // In Proceedings of the 23rd International Conference on Software Engineering. — To- ronto, Ontario, Canada. — May 2001. —P. 329–338. 6. Malishevsky A.G. Test case prioritization // Ph.D. Dissertation. Oregon State University, Corvallis, Oregon, USA. — 2003. — 291 p. Elbaum S.G., Munson J.C. Code churn: A measure for estimating the impact of code change // In Proceedings of the Interna- tional Conference on Software Maintenance. — Bethesda, MD, USA. — 1998. — Р. 24–31. Khoshgoftaar T.M., Munson J.C. Predicting software development errors using complexity metrics // Journal on Selected Areas in Communications. — 1990. — 8, № 2. — Р. 253–261. Munson J.C. Software measurement: Prob- lems and practice // Annals of Software Engineering. — 1995. — 1, № 1. — Р. 255– 285. Использование информации о стоимости тестов и серьезности ошибок … Системні дослідження та інформаційні технології, 2008, № 1 81 7. Elbaum S.G., Munson J.C. Software evolu- tion and the code fault introduction process // Empirical Software Engineering Jour- nal. — 1999. — 4, № 3. — Р. 241–262. Поступила 10.11.2007 А.Г. Малышевский ISSN 1681–6048 System Research & Information Technologies, 2008, № 1 82 Использование информации о стоимости тестов и серьезности ошибок … Системні дослідження та інформаційні технології, 2008, № 1 83 МЕТРИКА APFD Рис. 1. Примеры, иллюстрирующие метрику APFD: а — тесты и выявленные ими ошибки; б — APFD для приоритезированного набора тестов Т1; в — APFD для приоритезированного набора тестов Т2; г — APFD для приоритезированного набора тестов Т3; д — APFD для при... НОВАЯ Cost-cognizant МЕТРИКА APFDC Формула для новой метрики ОЦЕНКА СТОИМОСТИ ТЕСТОВ Оценка Estimating SeverityСерьезности Ошибок ПРИМЕР ИСПОЛЬЗОВАНИЯ ИНФОРМАЦИИ О СТОИМОСТИ ТЕСТОВ И СЕРЬЕЗНОСТИ ОШИБОК Рис. 2. Примеры, иллюстрирующие метрику APFDС: а — для примера 1; б — для примера 2; в — для примера 1 Объект использования Методы пПриоритезации Распределения стоимости тестов Распределение сSeverityерьезности Оошибок Комбинации рРаспределений Сстоимости Ттестов и серьезности Severity Оошибок Результаты ИисследованийД Варьирование Рраспределения Сстоимости тестов Рис. 3. Средние значения APFDC для per каждого распределениея и каждого , per метода приоритезации Рис. 4. Абсолютные различия в значениях APFDC по всем наблюдениям между распределением unit и каждым из четырех оставшихся распределений стоимости тестов Varying Распределение Severity Ошибок Варьирование распределения серьезности ошибок Рис. 5. Распределения значений icse01/newFigs/fs.enc.eps \caption{\label{figure_cost_cognizance_study1_resfig3}APFD$_C$ (по одному на распределение серьезности ошибок и на метод приоритезации) Рис. 5. Распределения значений icse01/newFigs/fs.enc.eps \caption{\label{figure_cost_cognizance_study1_resfig3}APFD$_C$ (по одному на распределение серьезности ошибок и на метод приоритезации) Варьирование распределения стоимости тестов и серьезности ошибок ВЫВОДЫ Рис. 6. Диаграмма рассеяния icse01/newFigs/q3b_.eps\label{figure_cost_cognizance_study1_resfig4}значений APFDC для комбинации combined распределений Рис. 6. Диаграмма рассеяния icse01/newFigs/q3b_.eps\label{figure_cost_cognizance_study1_resfig4}значений APFDC для комбинации combined распределений
id nasplib_isofts_kiev_ua-123456789-14680
institution Digital Library of Periodicals of National Academy of Sciences of Ukraine
issn 1681–6048
language Russian
last_indexed 2025-11-30T09:35:45Z
publishDate 2008
publisher Навчально-науковий комплекс "Інститут прикладного системного аналізу" НТУУ "КПІ" МОН та НАН України
record_format dspace
spelling Малышевский, А.Г.
2010-12-27T14:17:35Z
2010-12-27T14:17:35Z
2008
Использование информации о стоимости тестов и серьезности ошибок в процессе приоритезации тестов / А.Г. Малышевский // Систем. дослідж. та інформ. технології. — 2008. — № 4. — С. 63-80. — Бібліогр.: 19 назв. —рос.
1681–6048
https://nasplib.isofts.kiev.ua/handle/123456789/14680
004.415.53
Рассмотрено использование информации о стоимости тестов и серьезности ошибок в процессе приоритезации в регрессивном тестировании. Описаны способы оценки стоимости тестов и серьезности ошибок. Приведены новые методы приоритезации и метрика для оценки их эффективности. Исследовано применение описанных методов и метрики, а также влияние выбора стоимости тестов и серьезности ошибок на приоритезацию.
This work has examined introducing information on test costs and fault severities into test case prioritization in regression testing. Methods to estimate test costs and fault severities are presented. New prioritization techniques and a metric to measure their efficiency are demonstrated. The application of these techniques and the metric, and also the influence of selecting test costs and fault severities on prioritization have been investigated.
Розглянуто використання інформації про вартість тестів і серйозність помилок у процесі пріоритезації у регресивному тестуванні. Описано способи оцінювання вартості тестів та серйозності помилок. Наведено нові методи пріоритезації та метрика для оцінки їх ефективності. Дослідженно застосування описаних методів і метрики, а також вплив вибору вартості тестів та серйозності помилок на пріоритезацію.
ru
Навчально-науковий комплекс "Інститут прикладного системного аналізу" НТУУ "КПІ" МОН та НАН України
Прогресивні інформаційні технології, високопродуктивні комп’ютерні системи
Использование информации о стоимости тестов и серьезности ошибок в процессе приоритезации тестов
Using information on test costs and fault severities in the test case prioritization process
Використання інформації про вартість тестів та серйозність помилок у процесі пріоритезації тестів
Article
published earlier
spellingShingle Использование информации о стоимости тестов и серьезности ошибок в процессе приоритезации тестов
Малышевский, А.Г.
Прогресивні інформаційні технології, високопродуктивні комп’ютерні системи
title Использование информации о стоимости тестов и серьезности ошибок в процессе приоритезации тестов
title_alt Using information on test costs and fault severities in the test case prioritization process
Використання інформації про вартість тестів та серйозність помилок у процесі пріоритезації тестів
title_full Использование информации о стоимости тестов и серьезности ошибок в процессе приоритезации тестов
title_fullStr Использование информации о стоимости тестов и серьезности ошибок в процессе приоритезации тестов
title_full_unstemmed Использование информации о стоимости тестов и серьезности ошибок в процессе приоритезации тестов
title_short Использование информации о стоимости тестов и серьезности ошибок в процессе приоритезации тестов
title_sort использование информации о стоимости тестов и серьезности ошибок в процессе приоритезации тестов
topic Прогресивні інформаційні технології, високопродуктивні комп’ютерні системи
topic_facet Прогресивні інформаційні технології, високопродуктивні комп’ютерні системи
url https://nasplib.isofts.kiev.ua/handle/123456789/14680
work_keys_str_mv AT malyševskiiag ispolʹzovanieinformaciiostoimostitestoviserʹeznostiošibokvprocesseprioritezaciitestov
AT malyševskiiag usinginformationontestcostsandfaultseveritiesinthetestcaseprioritizationprocess
AT malyševskiiag vikoristannâínformacííprovartístʹtestívtaserioznístʹpomilokuprocesípríoritezacíítestív