Jump to content

Элементарное сравнительное тестирование

Элементарное сравнительное тестирование ( ECT ) — это методология «белого ящика» с потоком управления , и проектирования тестов используемая при разработке программного обеспечения . [1] [2] Цель ECT — обеспечить детальное тестирование сложного программного обеспечения. Программный код или псевдокод тестируются для оценки правильной обработки всех результатов решений. Как и в случае покрытия с множеством условий [3] и тестирование базового пути , [1] охват всех независимых и изолированных условий достигается посредством модифицированного покрытия условий/решений (MC/DC) . [4] Изолированные условия объединяются в связанные ситуации, создавая формальные тестовые примеры . Независимость условия демонстрируется изолированным изменением значения условия. Каждое соответствующее значение условия покрывается тестовыми примерами .

Тестовый пример

[ редактировать ]

Тестовый пример представляет собой логический путь через одно или несколько решений от начала до конца процесса. Противоречивые ситуации выводятся из матрицы тестовых примеров и исключаются. Подход MC/DC изолирует каждое условие, игнорируя все возможные комбинации подпутей и покрытие пути. [1] где

  • T — количество тестовых случаев на одно решение и
  • n количество условий.

Решение состоит из совокупности элементарных условий

Функция перехода определяется как

Учитывая переход

изолированный тестовый путь состоит из

График тестового примера

[ редактировать ]

Граф тестовых примеров иллюстрирует все необходимые независимые пути (тестовые примеры) для покрытия всех изолированных условий. Условия представлены узлами, а значения условий (ситуации) — ребрами. Edge учитывает все программные ситуации. Каждая ситуация связана с одним предшествующим и последующим состоянием. Тестовые случаи могут перекрываться из-за изолированных условий.

Индуктивное доказательство ряда путей условий

[ редактировать ]

Элементарный метод сравнительного тестирования можно использовать для определения количества путей условий путем индуктивного доказательства.

Рисунок 2. Индуктивный якорь ECT

Есть возможные комбинации значений условий

Когда каждое условие изолировано, количество необходимых тестовых случаев за решение составляет:

Рис. 3. Индуктивный защищенный конец ECT

есть ребра от родительских узлов и ребра к дочерним узлам из .

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

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

Этапы разработки тестового примера

[ редактировать ]
  1. Определить решения
  2. Определить тестовые ситуации для каждой точки принятия решения ( модифицированное условие/покрытие решений )
  3. Создайте логическую матрицу тестовых примеров
  4. Создайте матрицу физического тестового примера
Рисунок 4. Пример графа потока управления ECT
Рисунок 5: Условия примера D2 ECT

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

Псевдокод

if days > 15 or price > 1000 or member then
    return −0.2
else if (days > 8 and days ≤ 15 or price ≥ 500 and price ≤ 1000) and workday then
    return −0.1
else
    return 0.0

Факторы

  • Количество дней:
  • Цена (евро):
  • Членская карта: нет; серебро; золото; платина
  • Дата выезда: рабочий день; выходные; праздничный день

возможные комбинации (тестовые случаи).

Пример на Python :

if days > 15 or price > 1000 or member:
    return -0.2
elif (days > 8 and days <= 15 or price >= 500 and price <= 1000) and workday:
    return -0.1
else:
    return 0.0

Шаг 1: Решения

[ редактировать ]
Таблица 1: Пример D1 MC/DC
Исход
Решение D1 1 0
Условия с1 с2 с3 с1 с2 с3
с1 1 0 0 0 0 0
с2 0 1 0 0 0 0
с3 0 0 1 0 0 0

Шаг 2: Матрица MC/DC

[ редактировать ]
Таблица 2: Пример D2 MC/DC
Исход
Решение D2 1 0
Условия с4 с5 с6 с4 с5 с6
с4 1 0 1 0 0 1
с5 0 1 1 0 0 1
с6 1 0 1 1 0 0

Выделенные диагонали в матрице MC/DC описывают изолированные условия: все повторяющиеся ситуации считаются доказанными и устраненными.

Шаг 3: Логическая матрица тестовых примеров

[ редактировать ]
Таблица 3: Пример матрицы логического тестового примера
Ситуация
х
х х х х
х
х
х
х
х
х

Тестовые случаи формируются путем отслеживания путей принятия решений. Для каждого решения последующий и предыдущий подпути ищутся до тех пор, пока у каждого подключенного пути не будет начала и конец :

Шаг 4: Физическая матрица тестовых примеров

[ редактировать ]
Таблица 4. Примеры случаев физического тестирования
Фактор\Тестовый пример
дни 16 14 8 8 8
цена 1100 600
отправление на
член серебро
Результат
0 0
-10 1 1 1
-20 1 1 1

Физические тестовые примеры создаются на основе логических тестовых примеров путем заполнения представлений фактических значений и соответствующих им результатов.

График тестового примера

[ редактировать ]
Рисунок 6: Пример тестового примера ECT

В примере графа тестовых случаев все тестовые случаи и их изолированные условия отмечены цветами, а остальные пути передаются неявно.

См. также

[ редактировать ]
  1. ^ Jump up to: а б с Ли Коупленд (2004). Руководство для практикующих специалистов по проектированию тестов программного обеспечения , глава 10. Издательство Artech House, Норвуд. ISBN   0140289712 .
  2. ^ «Все об элементарном сравнительном тесте | Testlearning» . www.testlearning.net . Проверено 2 сентября 2022 г.
  3. ^ Гленфорд Дж. Майерс (2004). Искусство тестирования программного обеспечения, второе издание , с. 40., Джон Уайли и сыновья, Нью-Джерси. ISBN   0-471-46912-2 .
  4. ^ Тим Крум (2006). TMap Далее, о тестировании, ориентированном на результат , стр. 668. Издательство UTN, Роттердам. АСИН   B01K3PXI5U .
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: fd6b1ad75686670478dd036b871000ae__1710410160
URL1:https://arc.ask3.ru/arc/aa/fd/ae/fd6b1ad75686670478dd036b871000ae.html
Заголовок, (Title) документа по адресу, URL1:
Elementary comparison testing - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)