Подробное объяснение метода разработки тестового примера «черный ящик»
Подробное объяснение метода разработки тестового примера «черный ящик»

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

черный ящиктествариант использованиядизайнМетоды включают метод разделения классов эквивалентности.、граничное метод анализа значений、ошибка в догадке、диаграмма причин и следствий、метод на основе таблицы решений、Метод ортогонального тестового проектирования、метод функциональной диаграммы、Метод графа сцены и т. д.

(1) Метод разделения классов эквивалентности

Определение: Метод разделения классов эквивалентности заключается в том, чтобы разделить все возможные входные данные, то есть входную область программы, на несколько частей (подмножества), а затем выбрать небольшое количество репрезентативных данных из каждого подмножества в качестве тестовых примеров. Метод является важным и часто используемым методом разработки тестовых сценариев «черного ящика».

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

Действительный класс эквивалентности относится к набору входных данных, который является разумным и значимым для спецификации программы. Используйте допустимые классы эквивалентности, чтобы убедиться, что программа реализует функциональность и производительность, указанные в спецификации.

Неверный класс эквивалентности относится к набору входных данных, для которого спецификация программы необоснованна или бессмысленна. Для конкретной проблемы должен быть хотя бы один недействительный класс эквивалентности, но их может быть несколько.

Критерии дивизиона:

1) Завершить тестирование и избежать дублирования

2) Важным моментом при разделении класса эквивалентности является разделение множества на множество непересекающихся подмножеств, а объединение подмножеств — это все множество.

3) Союз – это весь комплект: готовность

4) Подмножества не пересекаются друг с другом: обеспечение некоторой формы неизбыточности

5) Определить (выбрать) тестовый пример в том же классе. В одном и том же эквивалентном классе обработка часто одинакова, и одна и та же обработка отображается на «один и тот же путь выполнения».

Метод деления:

1) Если входное условие указывает диапазон значений или количество значений, можно установить один действительный класс эквивалентности и два недействительных класса эквивалентности. Например: входное значение — это оценка учащегося, диапазон: 0–100.

2) Когда входное условие задает набор входных значений или задает условие «должно быть», могут быть установлены действительный класс эквивалентности и недопустимый класс эквивалентности:

3) Если входным условием является булева величина, можно определить действительный класс эквивалентности и недопустимый класс эквивалентности. Логическая величина — это двоичный тип перечисления. Логическая величина имеет два состояния: true и false.

4) Когда задан набор значений входных данных (при условии n) и программе необходимо обрабатывать каждое входное значение отдельно, можно установить n допустимых классов эквивалентности и один недопустимый класс эквивалентности.

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

5) При задании правил, которым должны соответствовать входные данные, может быть установлен действительный класс эквивалентности (соответствующий правилам) и несколько недействительных классов эквивалентности (нарушающих правила с разных сторон);

6) Когда известно, что каждый элемент в разделенном классе эквивалентности обрабатывается программой по-разному, класс эквивалентности следует дополнительно разделить на более мелкие классы эквивалентности.

Преобразование в тестовый пример:

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

1) Укажите уникальный номер для каждого класса эквивалентности;

2) Разработайте новый тестовый пример, чтобы охватить как можно больше допустимых классов эквивалентности, которые еще не были охвачены, и повторяйте этот шаг до тех пор, пока не будут охвачены все допустимые классы эквивалентности;

3) Разработайте новый тестовый пример так, чтобы он охватывал только один недопустимый класс эквивалентности, который еще не был охвачен, и повторяйте этот шаг до тех пор, пока не будут охвачены все недопустимые классы эквивалентности.

Пример 1: Задача треугольника

Определенная программа требует: «Введите три целых числа a, b и c в качестве длин сторон трех сторон, чтобы сформировать треугольник. Программа определяет тип образовавшегося треугольника. Когда треугольник является общим треугольником, равнобедренным треугольником или равносторонний треугольник. Выполните вычисления отдельно». Используйте метод разделения классов эквивалентности для разработки тестовых примеров для этой программы.

Проанализируйте требования к входным условиям, заданным и подразумеваемым в вопросе:

(1) Целые числа (2) Три числа (3) Ненулевые числа (4) Положительные числа

(5) Сумма двух сторон больше третьей стороны (6) Равнобедренная (7) Равносторонняя

Если a, b, c удовлетворяют условиям (1) ~ (4), то будет выведена одна из следующих четырех ситуаций:

1) Если условие (5) не выполняется, то на выходе программы будет «нетреугольник».

2) Если три стороны равны, условие (7) выполнено и на выходе программы получается «равносторонний треугольник»

3) Если равны только две стороны и выполнено условие (6), на выходе программы будет «равнобедренный треугольник»

4) Если три стороны не равны, на выходе программы будет «общий треугольник».

Список и классы нумерации эквивалентности

Тестовые примеры, охватывающие допустимые классы эквивалентности:

a b c охватывает эквивалентные номера классов

3 4 5 (1) (7)

4 4 5 (1)(7) (8)

4 5 5 (1) (7) (9)

5 4 5 (1) (7) (10)

4 4 4 (1) (7) (11)

Тестовые примеры, охватывающие недопустимые классы эквивалентности:

Тестовые примеры, охватывающие допустимые классы эквивалентности:

a b c охватывает эквивалентные номера классов

3 4 5 (1) (7)

4 4 5 (1)(7) (8)

4 5 5 (1) (7) (9)

5 4 5 (1) (7) (10)

4 4 4 (1) (7) (11)

Тестовые примеры, охватывающие недопустимые классы эквивалентности:

Пример 2, Следующая дата

Функция NextDate содержит три переменные: месяц, день и год. Выходные данные функции — это дата на следующий день после входной даты.

Например, если входные данные — 7 марта 2006 г., выходные данные функции будут 8 марта 2006 г. Входные переменные месяц, день и год должны быть целочисленными значениями и соответствовать следующим условиям:

1、1<=month<=12

2、1<=day<=31

3、1812<=year<=2012

1) Допустимыми классами эквивалентности являются:

M1={месяц:1<=месяц<=12}

D1={дата:1<=дата<=31}

Y1={Годделиться:1812<=Год<=2012}

2) Если какое-либо из условий 1–3 не выполняется, функция NextDate сгенерирует выходные данные, указывающие, что соответствующая переменная выходит за пределы диапазона значений, например «значение месяца не находится в диапазоне 12». Очевидно, что по-прежнему существует большое количество недопустимых комбинаций года, месяца и дня. Функция NextDate использует эти комбинации как единый вывод: «Недопустимая введенная дата».

Его недействительный класс эквивалентности:

M2={месяц:месяц<1}

M3={месяц:месяц>12}

D2={дата:дата<1}

D3={дата:дата>31}

Y2={Годделиться:Год<1812}

Y3={Годделиться:Год>2012}

Слабые тестовые примеры класса общей эквивалентности

месяц

дата

Год

ожидаемый результат

6

15

1912

1912Год6луна16день

сильный класс общей эквивалентноститествариант использованиятакой же Слабые тестовые примеры класса общей эквивалентности

Примечание. Слабый вариант предполагает наличие единственного дефекта; надежный учитывает недопустимые значения.

(1) Слабо устойчивый тест класса эквивалентности.

вариант использования

ID

месяц

дата

Год

ожидаемый результат

WR1

6

15

1912

1912Год6луна16день

WR2

0

1

1912

месяц не входит в число 1~12

WR3

15

1

1912

месяц не входит в число 1~12

WR4

1

0

1912

дата не входит в число 1~31

WR5

1

32

1912

дата не входит в число 1~31

WR6

1

1

1811

Год не в 1812~2012

WR7

1

1

2013

Год не в 1812~2012

(2) Надежное тестирование класса эквивалентности

вариант использования

ID

месяц

дата

Год

ожидаемый результат

SR1

15

1

1912

месяц не входит в число 1~12

SR2

1

32

1912

дата не входит в число 1~31

SR3

1

1

1811

Личность Года не относится к 1812~2012 гг.

SR4

0

0

1912

Два недействительны и один действителен.

SR5

0

1

1811

Два недействительны и один действителен.

SR6

1

0

1811

Два недействительны и один действителен.

SR7

0

0

1811

три инвалида

(2) Метод анализа граничных значений

Определение: маргинальный Метод анализа значений – это ограничение ввода или вывода. значение Метод проведения теста «черный ящик». Обычно граничное Метод значимого анализа является дополнением к методу разделения классов эквивалентности. В данном случае его тествариант. использование исходит из границы класса эквивалентности.

Отличия от эквивалентных классов:

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

2) Анализ граничных значений не только учитывает входные условия, но также учитывает тестовые ситуации, создаваемые выходным пространством.

Метод анализа:

Большое количество ошибок возникает на границах входного или выходного диапазона.,Вместо того, чтобы происходить в пределах входного и выходного диапазона. поэтому для различных пограничных ситуаций дизайнтествариант использования, может обнаружить больше ошибок. Используйте граничное значение Аналитические методыдизайнтествариант использования,Сначала следует определить граничные условия. Обычно границы классов входной и выходной эквивалентности,То есть нам следует сосредоточиться на граничных ситуациях теста. следует выбирать точно равным,Значения чуть выше или чуть ниже границ как тестовые данные,Вместо выбора типичных значений или произвольных значений в классе эквивалентности в качестве тестовых данных.

Общие граничные значения:

1) Для 16-битных целых чисел 32767 и 32768 являются границами.

2) Курсор находится в крайнем левом верхнем и правом нижнем положении экрана.

3) Первая и последняя строки отчета

4) Первый и последний элементы массива

5) 0-й, 1-й, 2-й и последний раз цикла.

Анализ граничных значений:

1)граничное В анализе значений используется то же деление, что и в методе разделения классов эквивалентности, за исключением того, что граничное Анализ значения предполагает, что ошибки существуют больше на границах делений и, следовательно, на границах классов эквивалентности и с обеих сторон использования。

Пример. Тестирование функции, вычисляющей квадратные корни

Входные данные: действительные числа

Выход: действительное число

Технические характеристики: При вводе числа 0 или больше 0 возвращается его положительный квадратный корень; при вводе числа меньше 0 отображается сообщение об ошибке «Недопустимый квадратный корень, входное значение меньше 0» и возвращается 0. ; библиотечная функция printLine может использоваться для вывода сообщений об ошибках.

2) Разделение классов эквивалентности:

i. Можно рассмотреть следующие подразделения:

A、входить(i)<0 и(ii)>=0

B、выход(a)>=0и(b)Error

ii. тестовый вариант имеет два применения

А. Вход 4, выход 2. Соответствует (ii) и (a).

Б. Введите 10, выведите 0 и сообщение об ошибке. Соответствует (i) и (b)

3) Анализ граничных значений

Границей деления (ii) является 0 и наибольшее положительное действительное число, границей деления (i) является наименьшее отрицательное действительное число и 0. Отсюда получаем тествариант; использования:

A. Введите {минимальное отрицательное действительное число}

Б. Введите {отрицательное число с очень маленьким абсолютным значением}

В. Введите 0

D. Введите {положительное число с очень маленьким абсолютным значением}

E. Введите {максимальное положительное действительное число}

4) Обычно в тестирование программного обеспечения входят несколько типов граничных тестов: числа, символы, положение, вес, размер, скорость, ориентация, размер, пространство и т. д.

5) Соответственно, вышеуказанные типы граничных значений должны находиться в следующих положениях: максимальное/минимальное, первое/последнее положение, верхнее/нижнее, самое быстрое/медленное, самое высокое/самое низкое, самое короткое/длинное, пустое/полное и т.д.

6) Используйте граничные значения в качестве тестовых данных

элемент

граничное значение

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

характер

Начать с 1 персонажа/Завершить 1 персонажем

Предположим, что область ввода текста позволяет ввести от 1 до 255 символов.,Введите 1 и 255 символов в качестве допустимого класса эквивалентности, введите 0 и 256 символов в качестве Неверного класса эквивалентности;,Эти числовое значения — это все значения пограничного состояния.

числовое значение

Мин. значение 1/Макс. значение + 1

Предположим, что поле ввода данных определенного программного обеспечения требует ввода 5-значного значения данных. Вы можете использовать 10000 в качестве минимального значения и 9999 в качестве максимального значения, а затем использовать числовое значение, которое меньше 5 цифр и больше 5. цифры. значение как пограничное состояние.

космос

Чуть меньше доступного космоса/чуть больше полного космоса

Например, при использовании USB-накопителя для хранения данных,В качестве граничного состояния используйте файл немного большего размера (несколько КБ), чем оставшийся космос на диске.

7)внутреннийграничное значениеанализировать

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

Внутреннее граничное значениесостояние в основном включает в себя следующие виды:

1)числовое значениеизграничное Тест значения: Компьютер основан на двоичной работе, поэтому любое числовое программное обеспечение Операции значения имеют определенные ограничения диапазона.

элемент

диапазон или значение

Кусочек

0 или 1

байт

0~255

Слово

0~65535 (одиночное слово) или 0~4294967295 (двойное слово)

Тысяча (К)

1024

Мега (М)

1048576

Джи (G)

1073741824

2)характеризграничное Тест значения: В компьютерном программном обеспечении характер также является очень важным элементом представления, среди которых ASCII и Unicode являются распространенным методом кодирования. В следующей таблице перечислены некоторые общие характеристики, соответствующие значениям. кода ASCII。

характер

Значение кода ASCII

характер

Значение кода ASCII

Нулевой

0

A

65

Космос

32

a

97

косая черта(/)

47

z

122

0

48

Z

90

двоеточие(:)

58

одинарная кавычка (')

96

@

64

3)другойграничное Значение проверки: В разных областях применения промышленности существует свое специфическое граничное состояние, основанное на разных стандартах аппаратного и программного обеспечения. значение. Ниже перечислены некоторые ограничения, связанные с мобильными телефонами. значение:

Аппаратное оборудование

диапазон или значение

Напряжение литиевой батареи мобильного телефона

Рабочее напряжение: 3,6 ~ 4,2 В; Защитное напряжение: от 2,5 до 3 В.

Нормальная рабочая температура мобильного телефона

-25°C~+60°C

Преобразование в тестовый пример:

1) Если входное условие задает диапазон значений, то значение, которое только достигает границы этого диапазона, и значение, которое чуть превышает границу этого диапазона, должно быть принято в качестве тестовых входных данных.

Ø Например, если в спецификациях программы указано: «Формула расчета почтовых отправлений весом от 10 до 50 кг равна...». астевариант использования,Нам нужно взять 10 и 50,Следует также принять10.01,49.99,9,99 и 50,01 и т. д.

2) Если входное условие указывает количество значений, используйте максимальное число, минимальное число, одно меньше минимального числа и одно больше максимального числа в качестве тестовых данных.

Ø Например, входной файл должен включать от 1 до 255 записей, тогда тествариант использование может быть 1и255, а также должно быть 0, 256 и т.д.

3) Примените правила 1) и 2) к выходному состоянию, т. е. дизайнтествариант. использование приводит к тому, что выходное значение достигает граничного значения значение и окружающие его ценности.

Ø Например, спецификации определенной программы требуют расчета «суммы ежемесячного страхового отчисления от 0 до 1165,25 юаней», а ее тест-вариант использование может быть 0,00 и 1165,24, а также может быть 0,01 и 1165,26 и т. д.

Ø Другим примером является программа, которая принадлежит системе поиска информации и требует «каждый раз отображать минимум 1 и максимум 4 аналитических сводки». На данный момент мы должны учитывать: использование включает 1–4, а также должно включать 0–5 и т. д.

4) Если входная или выходная область, заданная спецификацией программы, представляет собой упорядоченный набор, первый элемент и последний элемент набора должны быть выбраны в качестве тестварианта. использования。

5) Если в программе используется внутренняя структура данных, в качестве тестварианта следует выбрать значение на границе внутренней структуры данных. использования。

6) Проанализируйте спецификации, чтобы найти другие возможные граничные условия.

Пример 1, маркировка тестовых бумаг

В настоящее время существует стандартизированный тест для оценки учащихся.,Процедура формирования отчетов об исполнении. Его характеристики следующие: Входной файл программы состоит из нескольких записей с 80 символами.,Как показано на рисунке справа, все записи разделены на 3 группы:

1) Заголовок. В этой группе имеется только одна запись, и ее содержимым является имя выходного отчета о результатах.

2) Запись стандартных ответов на каждый вопрос в контрольной работе: Каждая запись помечается цифрой «2» на 80-м знаке. С 1-го по 3-й характер первой записи этой группы — это номера вопросов (значения от 1 до 999). Числа характера от 10 до 59 дают ответы на вопросы от 1 до 50 (каждый юридический характер соответствует одному ответу). 2-й из группы,Третья... запись соответствует с 51-й по 100-ю.,№ от 101 до 150,...ответ на вопрос.

3) Описание листа ответов каждого учащегося: 80-м признаком каждой записи в этой группе является цифра «3». Лист ответов каждого учащегося задается в нескольких записях. Например, первая запись A содержит имя и номер ученика с 1-го по 9-й.,Числами от 10 до 59 символов указаны ответы на вопросы от 1 до 50, заданные А. Если количество вопросов превышает 50,Затем 2-й,3-е место... рекорды дают ему места с 51-го по 100-е соответственно.,№ от 101 до 150……вопросизотвечать。Затем студент Б.из Запись в листе ответов。

4) Число студентов не должно превышать 200, а количество тестовых вопросов не должно превышать 999.

5) На выходе программы имеется 4 отчета: а) Стенограммы, упорядоченные по номерам учащихся, с указанием оценок и рейтингов каждого учащегося. б) Транскрипты отсортированы по успеваемости учащихся. в) Отчетность о средних баллах и стандартных отклонениях. г) Отчет по анализу тестовых вопросов. Отсортируйте по номеру вопроса и укажите процент учащихся, правильно ответивших на каждый вопрос.

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

Выходное состояние и соответствующий тествариант использованияповерхность。

Пример2, анализ границ треугольника

В описании задачи о треугольнике никаких других ограничений не дается, кроме того, что длины сторон являются целыми числами. Здесь мы устанавливаем диапазон значений длины каждой стороны треугольника равным [1, 100].

тествариант использования

a

b

c

ожидаемый результат

Test1 Test2 Test3 Test4 Test5

60 60 60 50 50

60 60 60 50 50

1 2 60 99 100

равнобедренный треугольник равнобедренный треугольник Равносторонний треугольник равнобедренный треугольник нетреугольный

Test6 Test7 Test8 Test9

60 60 50 50

1 2 99 100

60 60 50 50

равнобедренный треугольник равнобедренный треугольник равнобедренный треугольник нетреугольный

Test10 Test11 Test12 Test13

1 2 99 100

60 60 50 50

60 60 50 50

равнобедренный треугольник равнобедренный треугольник равнобедренный треугольник нетреугольный

Пример3,NextDateфункцияграничное значениеанализироватьтествариант использования

В функции NextDate неявно указано, что диапазон значений переменной Mouth и переменной Day равен 1≤рот может быть 12 и 1 мая может быть 31 день, а диапазон значений переменной Year установлен на 1912 год может оказаться 2050 годом. .

(3) Неправильный метод спекуляций

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

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

1. Например, входные и выходные данные равны 0; форма ввода пуста или форма ввода имеет только одну строку. Это ситуации, в которых возможны ошибки. Примеры таких ситуаций можно выбрать в качестве тестварианта. использования。

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

1) Считает ли программа пробелы ответами?

2) В записях ответов смешаны стандартные записи ответов.

3) Помимо записи названия, есть еще записи, где последний характер не равен ни 2, ни 3.

4) Есть два студента с одинаковым студенческим билетом.

5) Количество тестовых вопросов – отрицательное число.

3. Например,тест Программа для сортировки линейного списка (например, массива),Можно предположить, что следующие ситуации требуют особого подхода:

1) Входная линейная таблица — пустая таблица;

2) Таблица содержит только один элемент;

3) Все элементы входной таблицы отсортированы;

4) Входная таблица отсортирована в обратном порядке;

5) Некоторые или все элементы входной таблицы одинаковы.

4. Например, функцию вызова тестового терминала мобильного телефона можно использовать в качестве дополнения к различным ситуациям сбоя вызова. использования:

1) Совершение исходящих вызовов (неэкстренных вызовов), когда SIM-карта не вставлена.

2) Вставьте просроченную SIM-карту для совершения исходящих звонков.

3) Если радиочастотное устройство повреждено или нет зоны сигнала, вставьте действительную SIM-карту, чтобы позвонить.

4) Сеть в норме, вставьте действительную SIM-карту и позвоните на неверный номер (например, 1, 888, 333333, не вводите никакой номер и т. д.).

5) Сеть в норме, вставьте действующую SIM-карту и используйте функцию «быстрого набора», чтобы набрать цифры недействительного номера.

(4) Метод причинно-следственной диаграммы

определение:диаграмма причин и следствийэто своего родаиспользовать Графический методанализироватьвходитьиз Различные комбинации,тем самымдизайнтествариант метод использования, который подходит для проверки различных комбинаций состояния ввода программы.

приложение:

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

Если вам нужно учитывать различные комбинации ввода состояния при тестировании,тогда количество возможных комбинаций было бы астрономическим,поэтому Необходимо рассмотреть возможность использования метода, подходящего для описания множествасостояниеизкомбинация、соответственно генерировать несколькодействиеиздействовать по форметествариант дизайн использования, который требует использования причинно-следственных диаграмм (логических моделей).

1. Знакомство с причинно-следственными диаграммами

1) Четыре символа обозначают четыре причинно-следственные связи в спецификациях.

2) Причинно-следственная диаграмма использует простые логические символы для соединения левого и правого узлов прямыми линиями. Левый узел представляет входной статус (или причину), а правый узел представляет выходной статус (или результат).

3) C1 представляет причину, обычно размещаемую в левой части рисунка; e1 представляет результат, обычно размещаемый в правой части рисунка. И C1, и e1 могут принимать значение 0 или 1. 0 означает, что определенное состояние не возникает, а 1 означает, что определенное состояние имеет место.

2. Концепции, используемые в причинно-следственных диаграммах

1) Отношения

Ø Идентичность: если c1 равно 1, то e1 также равно 1, в противном случае e1 равно 0;

Ø Нет: если c1 равно 1, то e1 равно 0, в противном случае e1 равно 1;

Ø Или: если c1, c2 или c3 равно 1, то e1 равно 1, в противном случае e1 равно 0; «ИЛИ» может иметь любое количество входов.

ØИ: если c1 и c2 оба равны 1, то e1 равно 1, в противном случае e1 равно 0; «И» также может иметь любое количество входов.

2) Ограничения

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

Ø Существует четыре типа ограничений на входные условия:

· Ограничение E (исключительное): не более одного из a и b может быть равно 1, то есть a и b не могут быть равны 1 одновременно.

· I-ограничение (или): хотя бы один из a, b и c должен быть равен 1, то есть a, b и c не могут быть равны 0 одновременно.

· О ограничение (уникальное); должно быть одно из a и b, и только одно из них равно 1.

· Ограничение R (требование): когда a равно 1, b должно быть равно 1, то есть невозможно, чтобы a было равно 1, а b было равно 0.

Ø Тип ограничения выходного условия

Единственными ограничениями на условие вывода являются ограничения M (обязательные): если результат a равен 1, результат b принудительно равен 0.

3. Использование метода причинно-следственной диаграммы дизайнтествариант использованияизшаг:

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

2) Проанализировать семантику в описании спецификации программного обеспечения, выяснить соответствующие связи между причинами и результатами, а также между причинами и причинами и на основе этих связей построить причинно-следственную диаграмму.

3) Из-за грамматических ограничений или ограничений окружающей среды некоторые комбинации между причинами и причинами, а также между причинами и результатами невозможны. Для обозначения этих особых ситуаций на диаграмме причин и следствий используются некоторые символы, обозначающие ограничения или ограничивающие условия.

4) Преобразуйте диаграмму причин и следствий в таблицу решений.

5) Возьмите за основу каждый столбец таблицы суждений, дизайнтествариант использования。

Пример1,характер

Определенная спецификация программного обеспечения содержит такое требование: характер первого столбца должен быть A или B.,Характер второго столбца должен быть числом.,В этом случае измените файл,Но если характер первого столбца неверен,Затем дается информация L, если характер второго столбца не является числом;,Затем дается информация М.

отвечать:

1) По смыслу вопроса причины и результаты таковы:

причина:

1 – Характер первого столбца – A;

2 – Характер первого столбца – B;

3 – Характер второго столбца – число.

результат:

21 — Изменить файлы;

22 – Дать информацию Л;

23 - Дайте информацию М.

2) Соответствующая причинно-следственная диаграмма выглядит следующим образом:

11 – промежуточный узел; учитывая, что причина 1 и причина 2 не могут быть 1 одновременно, на причинно-следственную диаграмму накладывается ограничение E.

3) Составьте таблицу решений на основе диаграммы причин и следствий.

В двух левых столбцах восьми ситуаций таблицы причина ① и причина ② равны 1. Это невозможно, поэтому эти две ситуации следует исключить. В нижнем столбце таблицы указан вариант теста для 6 ситуаций. использования, это те данные, которые нам нужны.

Пример 2, торговый автомат

Существует программное обеспечение для торговых автоматов, которое продает напитки по цене 5 центов за штуку. Тествариант использованияиздизайн。Его характеристики следующие::Если вложено5десять центов или1Юаньденьгиизмонета,Нажмите кнопку «Апельсиновый сок» или «Пиво».,Соответствующий напиток будет доставлен. Если в автомате нет сдачи,Затем загорится красный индикатор «Нет сдачи».,В это время, вставив монету номиналом 1 юань и нажав кнопку,Напитки не выдаются, а также снимаются монеты номиналом 1 юань. Если у вас есть сдача, отдайте ее.,Затем красный индикатор «Нет сдачи» погаснет.,5 центов будут возвращены при доставке напитка.

1) Проанализируйте этот абзац и перечислите причины и последствия.

причина:

1 —— В торговом автомате есть сдача.

2 — Вставьте монету номиналом 1 юань.

3 — Вставьте монеты номиналом 50 центов.

4. Нажмите кнопку апельсинового сока.

5 — Нажмите кнопку пива.

результат:

21——На торговом автомате горит индикатор «нет сдачи».

22 — Возврат монеты в 1 юань.

23 — Возврат 50 центов

24 - Подарите апельсиновый сок

25 - Раздайте пиво и напитки

2) Нарисуйте причинно-следственную диаграмму, как показано на рисунке. Все узлы причин перечислены слева, а все узлы результатов — справа. Установите промежуточные узлы для представления промежуточных состояний обработки. Промежуточный узел:

11 — Вставьте монету номиналом 1 юань и нажмите кнопку напитка.

12 — Нажмите кнопку «Апельсиновый сок» или «Пиво».

13 — Вам следует разменять 50 центов, и в торговом автомате будет сдача.

14——Деньги выплачены.

3) Преобразовать в таблицу решений:

4) В таблице суждений заштрихованные части представляют невозможные ситуации из-за нарушений ограничениясостояния и удаляются. Столбцы 16 и 32 были удалены, поскольку ничего не было сделано. Наконец, его можно определить на основе оставшихся 16 столбцов. использованияизв соответствии с。

(5) Метод, основанный на таблице определений

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

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

Руководство по чтению, таблица оценок:

1

2

3

4

5

6

7

8

вопрос

Чувствуете усталость?

Y

Y

Y

Y

Заинтересованы?

Y

Y

Y

Y

Смущенный?

Y

Y

Y

Y

предположение

перечитать

Y

продолжать

Y

Перейти к следующей главе

Y

Y

отдых

Y

Y

Y

Y

Таблица оценок состоит из четырех частей, как показано ниже:

1) Заглушка условий (Условие-заглушка): перечисляет все состояния вопроса. Обычно считается, что порядок перечисления состояний не имеет значения.

2) Стопка действий (Действие Stub): Перечисляет возможные действия, указанные в вопросе. Порядок выполнения этих операций отсутствует.

3) состояниеэлемент(Condition Ввод): перечисляет значения условий в левом столбце. Истинные или ложные значения во всех возможных ситуациях.

4) элемент действия (ввод действия): перечисляет действие, которое следует предпринять в различных ситуациях значения состояния элемента.

Правила и объединение правил:

1) Правила. Конкретное значение любой комбинации состояний и соответствующие операции, которые необходимо выполнить, называются правилами. Правило проходит через столбец в таблице решений. Очевидно, сколько групп значений состояния перечислено в таблице определения?,Сколько правил существует,теперь этосостояниеэлементидействиеэлементсколько здесь столбцов。

2) Упрощение: это означает, что два или более правил имеют одинаковое действие при их объединении, и между их элементами состояния существует очень похожая связь.

Пример слияния:

1) Как показано на левой стороне рисунка ниже.,Оба правила одинаковы,состояниеэлементпохожий,Когда 1 и 2состояниеэлемента переходят в Y и N соответственно,Независимо от того, какое значение принимает состояние3,Все выполняют одно и то же действие. То есть выполняемое действие не имеет ничего общего с состоянием3. Так что можно объединить. «-» означает, что это не имеет никакого отношения к значению

2) Аналогично предыдущему,На картинке ниже,Несвязанный элемент состояния "-" может содержать другие значения элемента состояния.,Правила с одинаковым действием можно объединить.

3)

3) Упрощенная таблица оценок руководства по чтению

1

2

3

4

вопрос

Чувствуете усталость?

Y

N

Заинтересованы?

Y

Y

N

N

Смущенный?

Y

N

предположение

перечитать

X

продолжать

X

Перейти к следующей главе

X

отдых

X

Этапы создания таблицы определения:

1) Определить количество правил. Если имеется n условий, каждое условие имеет два значения (0, 1), поэтому правил 2n.

2) Перечислите все стопки условий и стопок действий.

3) заполнятьсостояниеэлемент

4) Заполните элемент действия и подождите, пока таблица первоначального суждения

5) Упростить и объединить похожие правила (те же действия)

Пример 1, обслуживание машины

вопрос Требования: «...для машин мощностью более 50 л.с.,Машины с неполной записью об техническом обслуживании или машины, находящиеся в эксплуатации более 10 лет.,Техническому обслуживанию следует отдать приоритет. . . . . . ",Здесь предполагается,«Неполные записи о техническом обслуживании» и «приоритетное техническое обслуживание» получили более строгое определение в других местах. Создайте, пожалуйста, таблицу оценок.

отвечать:

1. Определите количество правил: здесь 3 условия, каждое условие имеет два значения, поэтому правил должно быть 2*2*2=8.

2. Перечислите все стопки условий и стопок действий:

состояние

Мощность превышает 50 лошадиных сил?

Неполные записи по техническому обслуживанию?

Работаете более 10 лет?

действие

Расставить приоритеты

3. Заполните элемент состояния. Вы можете начать с последней строки состояниеэлемента и заполнять ее построчно.

4. Заполните стопку действий и элемент действия. Таким образом, получается исходная таблица суждений, показанная ниже.

состояние

1

2

3

4

5

6

7

8

Мощность превышает 50 лошадиных сил?

Y

Y

Y

Y

N

N

N

N

Неполные записи по техническому обслуживанию?

Y

Y

N

N

Y

Y

N

N

Работаете более 10 лет?

Y

N

Y

N

Y

N

Y

N

Работа

Расставить приоритеты

X

X

X

X

X

для другой обработки

X

X

X

5、

Упростите исходную таблицу решений. После слияния аналогичных правил получим

состояние

1

2

3

4

5

Мощность превышает 50 лошадиных сил?

Y

Y

Y

N

N

Неполные записи по техническому обслуживанию?

Y

N

N

Работаете более 10 лет?

Y

N

Y

N

Работа

Расставить приоритеты

X

X

X

X

для другой обработки

X

X

Пример 2, упрощенная таблица решений функции NextData.

M1={месяц, В каждом месяце 30 дней}

M2={месяц, В каждом месяце 31 день}

M3={месяц, февраль} Всего 29 = 512 правил.

D1={дата,1~28} 31 декабря и другие 31-е дни.

D2={дата,29} деньмесяциз31день Процесс нетакой же

D3={дата,30} плоский Год2луна28день Процесс нетакой же

D4={дата,31} 27 февраля

Y1 ={Бог:Бог Это сырой Бог}

Y2 ={Год:Год Не прыгать Год}

Улучшено до:

M1={месяц: В каждом месяце 30 дней}

M2={месяц: В каждом месяце 31 день, Кроме декабря}

M4={месяц:1февраль}

M3={месяц: февраль}

D1={дата:1<=дата<=27}

D2={дата:28}

D3={дата:29}

D4={дата:30}

D5={дата:31}

Y1 ={Бог:Бог Это сырой Бог}

Y2 ={Год:Год Не прыгать Год}

Таблица решений NextData с большим количеством логических связей между входными переменными

3. Используйте метод таблицы решений для использования следующей программы: Программа имеет три входные переменные месяц, день, год (месяц, день и год — все целые числа). значение,И удовлетворим: 1Можетмесяц Может12и1Можетдень Может31),Соответственно в качестве входных данных дата месяц, день, часть Года.,через программу Можетквыход Долженвходитьдатасуществоватьденьчерез деньиздата。

Например,Введено 29 ноября 2004 г.,则Должен程序извыходдля2000Год12луна1день。

1) Проанализируйте различные входные ситуации и перечислите эффективные классы эквивалентности, разделенные на входные переменные месяц, день и год.

2) Проанализируйте спецификацию программы и дайте возможные действия, указанные в вопросе, на основе приведенного выше разделения классов эквивалентности (то есть перечислите все стопки действий).

3) На основании (1) и (2) составить упрощенную таблицу решений.

Анализ случая выглядит следующим образом:

Ø Допустимые классы эквивалентности для переменных месяца:

M1: {month=4,6,9,11} M2: {month=1,3,5,7,8,10}

M3: {month=12 }M4: {month=2}

Ø Допустимые классы эквивалентности для дневных переменных:

D1:{1≤day≤26} D2: {day=27} D3: {day=28} D4: {day=29} D5: {day=30} D6: {day=31}

Ø Допустимые классы эквивалентности для переменной года:

Y1: {год Y2: {год не високосный}

4) Учитывая различные допустимые ситуации ввода, в программе можно выполнить шесть возможных операций:

a1: day+2 a2: day=2 a3: day=1

a4: month+1 a5: month=1 a6: year+1

4. Применение таблицы решений при функциональном тестировании.

1) Функциональные требования некоторого программного обеспечения можно очень четко выразить с помощью таблицы решений, и таблица решений становится хорошим инструментом при тестировании функций программы. Если в спецификации программного обеспечения указано:

Ø когдасостояние1исостояние2удовлетворить,И состояние3изостояние4 не удовлетворено,Или когда состояние1, 3изостояние4 выполнено,Чтобы выполнить действие 1.

Ø Если какое-либо состояние не удовлетворяется, выполните операцию 2.

Ø Если состояние 1 не удовлетворено, а состояние 4 удовлетворено, необходимо выполнить операцию 3. Согласно спецификациям получается следующая оценочная таблица:

здесь,Таблица решений дает только 8 из 16 правил. фактически,Некоторые правила, кроме этих 8, предназначены для случаев, когда указанное состояние не может быть выполнено.,При выполнении 3 операций,Чтобы выполнить операцию по умолчанию. когда в этом нет необходимости,Таблицы решений обычно могут опускать эти правила. Но если вы воспользуетесь таблицей суждений для дизайнатествариантного использования, вы должны перечислить эти правила по умолчанию (таблица ниже).

Правило 5

Правило 6

Правило 7

Правило 8

состояние1

N

Y

Y

состояние2

Y

Y

N

состояние3

Y

N

N

N

состояние4

N

N

Y

действие по умолчанию

x

x

x

x

негласные правила

2) Преимущества и недостатки таблиц решений

Ø Преимущества: Он может перечислять сложные вопросы в соответствии с различными возможными ситуациями.,краткий и простой для понимания,Пропусков также можно избежать.

Ø Недостатки: Невозможно выразить повторное выполнение действия.,Например Структура цикла。

3) B. Beizer Отмечается, что целесообразно использовать оценочную таблицу дизайнтествариант. использованияизсостояние:

Ø Технические характеристики представлены в виде таблиц решений или могут быть легко преобразованы в таблицы решений.

Ø Порядок состояния не влияет и не влияет на то, какие операции выполняются.

Ø Порядок расположения правил не влияет и не влияет на то, какие операции выполняются.

Ø Всякий раз, когда выполняется определенное правило состояния.,и решить, что вы хотите делать,Никаких других правил проверять не нужно.

Ø Если правило выполняется для выполнения нескольких операций, порядок выполнения этих операций не имеет значения.

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

(6) Метод ортогонального испытания

Определение: Метод планирования научного эксперимента, который выбирает подходящее количество репрезентативных точек (примеров) из большого количества (экспериментальных) данных (тестовых случаев) для рациональной организации экспериментов (тестов). К подобным методам относятся: кластеризация. Аналитические методы, факторные методы. и т. д.

Шаги по использованию ортогонального эксперимента: дизайнтествариант использования:

1. Извлечение описания функции, таблица коэффициентов конструкции.

Состояние, которое влияет на экспериментальный индекс, называется фактором. Состояние, которое влияет на экспериментальный фактор, называется состоянием фактора. Используйте метод планирования ортогонального эксперимента для дизайнатестварианта. использования, прежде всего, согласно характеристикам искомого программного обеспечения, мы должны выяснить действующие объекты и внешние факторы, влияющие на реализацию его функций, рассматривать их как факторы, а значения каждого фактора рассматривать как Для функций в спецификации требований к программному обеспечению необходимо разделить и суммировать общее количество. Функциональные требования разлагаются и расширяются по уровням и разлагаются на конкретные базовые функциональные требования, которые являются относительно независимыми. Таким образом, можно определить все факторы в тестируемом программном обеспечении и предоставить эталонную основу для определения веса. каждого фактора. Определяющим фактором и состоянием являются дизайнтествариант. Ключ к использованию. Поэтому необходимо максимально полно и правильно определить значение, чтобы обеспечить тествариант. дизайн использования сделан законченным и эффективным.

2. Взвешенный скрининг и составление таблицы факторного анализа.

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

3. Используйте ортогональные таблицы для создания наборов тестовых данных.

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

Использование метода дизайна ортогонального эксперимента дизайнтествариант использования, чем при использовании разделения классов эквивалентности, граничное Анализ значений, причинно-следственная диаграмма и другие методы имеют следующие преимущества: экономия человеко-часов тест Работы; контролируемый создаваемый тествариант; использует количество;тестовый вариант использование имеет некоторый охват.

(7) Метод функциональной диаграммы

Определение: Функциональная диаграмма состоит из диаграммы перехода состояний и булевой функции. Диаграмма перехода состояний описывается состояниями и переходами. Состояние указывает местоположение (или время) ввода данных, а переход указывает на изменение состояния. При этом это зависит от таблицы решений или причинно-следственной логической функции, представленной на схеме. Например, упрощенная функциональная схема банкомата.

приложение:

1. Знакомство с функциональной схемой

Функциональное описание программы обычно состоит из динамического описания и статического описания. Динамическое описание описывает порядок входных данных или порядок передач.

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

Модель функциональной диаграммы состоит из диаграммы перехода состояний и модели логической функции. Диаграмма перехода состояний используется для представления последовательности входных данных и соответствующих выходных данных на диаграмме перехода состояний.,Входные данные и текущее состояние определяют выходные данные и последующее состояние. Модель логической функции используется для представления соответствия между входным состоянием и выходным состоянием в состоянии. Модель логической функции подходит только для описания статических описаний.,выход Данные предоставлены тольковходить Данные определяют.тествариант Использование состоит из серии состояний, проходящих через тест, и пары состояний, которые должны удовлетворяться входными/выходными данными в каждом состоянии. Метод функциональной диаграммы на самом деле представляет собой гибрид черного и белого ящика. использованиядизайнметод。

(В методе функциональной диаграммы используются концепции и методы логического покрытия и тестирования пути, которые относятся к методу тестирования белого ящика. Содержание Логическое покрытие основано на внутренней логической структуре тестварианта программы. использованиядизайнметод.Долженметод Требоватьтестперсонал против процедуриз Логическая структура понятна.изучиться.из-за покрытиятестиз Цель нетакой же,Логическое покрытие можно разделить на: покрытие операторов,Охват решений,суждение-состояниекрышка,Комбинированное покрытие состояния и покрытие пути Ниже мы будем называть логическое покрытие и путь функциональным или системным уровнем.,Чтобы отличить его от внутренностей программы в белой коробке.)

2. тествариант использованиягенерироватьметод

Создать тествариант из функциональной диаграммы использования,получатьизтествариант количество использований приемлемо. Ключ к вопросу заключается в том, как выбрать тествариант из диаграммы перехода состояний. использования. Если вместо состояний используются узлы,Используйте дуги вместо миграций,Затем диаграмма перехода состояний может быть преобразована в форму блок-схемы управления программой. Вопрос преобразуется в путь программы тестопрос (например, тест белого ящика).

3. тествариант использования Создать правила

Для переноса состояния миграции (тестовый путь) тествариант использование с логическими моделями (частичный тествариант использования)изтествариант использование объединено для создания практического тестварианта на основе функциональных диаграмм. использования,Следующие правила должны быть определены при структурированном переходе состояний (SST).,Определите три формы циклов: последовательные,Выбрать и повторить. Но различить все циклы в переходе состояний сложно (график его представления опущен).

4. Создать тествариант из функциональной диаграммы использованияизпроцесс

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

2) Генерация тестового пути: используйте приведенные выше правила (три типа) для создания тестового пути от начального состояния до конечного состояния.

3) тествариант синтез использования: синтез тестовых путей с локальным вариантом в каждом состоянии функциональной диаграммы. Результатом является последовательность состояний от начального состояния до конечного состояния, а также комбинация входных данных и соответствующих выходных данных в каждом состоянии.

5. Алгоритм синтеза тестварианта использования: использовать состояние для построения дерева.

(8) Метод графа сцены

Определение: Почти все современное программное обеспечение использует запуск событий для управления процессами.,Ситуация, когда событие срабатывает, формирует сцену,Различные последовательности запуска и результаты обработки одного и того же события образуют поток событий. Этот тип мышления при проектировании программного обеспечения также можно использовать в тестировании программного обеспечения.,Может более ярко изобразить сцену при срабатывании события,полезно длятестдизайн ВОЗдизайнтествариант использования,такой жепосланник временитествариант использование легче понять и выполнить.

приложение:

элементарный альтернативный поток потока: как показано на рисунке ниже, через который проходит вариант Каждый путь использования пишется с элементарным альтернативный поток для обозначения потока, прямая черная линия представляет собой элементарный поток, это вариант процесса Самый простой путь к использованию. Альтернативные потоки представлены разными цветами. Альтернативный поток может варьироваться от элементарного. поток запускается, выполняется при определенном состоянии, затем снова присоединяется к элементарному в потоке (как в альтернативном потоке 1и3) может также происходить из другого альтернативного потока (как в Альтернативном); поток 2) или прекратить вариант использование без повторного присоединения к потоку (например, Альтернативный поток 2и4)。

9.3. Примеры

1. Пример описания

На рисунке ниже показана блок-схема примера банкомата.

2. Дизайн сцены. В таблице ниже показана созданная сцена.

Таблица 3-8 Дизайн сцены

Сценарий 1 – Успешный вывод средств

элементарный поток

Сценарий 2. В банкомате нет наличных.

элементарный поток

Альтернативный поток 2

Сценарий 3 – Недостаточно наличных в банкомате

элементарный поток

Альтернативный поток 3

Сценарий 4 – Неправильный PIN-код (возможность ввода еще есть)

элементарный поток

Альтернативный поток 4

Сценарий 5 – Неправильный PIN-код (больше нет возможности войти)

элементарный поток

Альтернативный поток 4

Сценарий 6. Учетная запись не существует/неправильный тип учетной записи.

элементарный поток

Альтернативный поток 5

Сценарий 7. Недостаточный баланс счета.

элементарный поток

Альтернативный поток 6

Примечание. Для удобства петли и комбинации петель в Альтернативном потоке 3и6 (сцена 3и7) не включены в приведенную выше таблицу.

3. вариант использованиядизайн

Для каждого из этих 7 сценариев нужно определить тествариант. использование. Матрица или таблица решений могут использоваться для определения и управлениятествариантом. использование. Общий формат показан ниже, где строки представляют отдельные тестварианты. использования, а столбцы представляют тествариант Информация об использовании. В этом примере для каждого тестварианта использовать, использовать тестовый вариант использованияID、состояние (или описание)、тествариант использованиясерединас участиемиз Все данные Юаньбелый(作длявходитьили уже сохраненсуществовать Вбаза данныхсередина)а такжеожидаемые результаты。

Таблица 3-9 тествариант использованияповерхность

TCID

сцена/состояние

PIN

счет

Введенная (или выбранная) сумма

книга Количество

Сумма в банкомате

ожидаемые результаты

CW1

Сценарий 1: Успешный вывод средств

V

V

V

V

V

Вывод средств успешно

CW2

Сценарий 2: В банкомате нет наличных.

V

V

V

V

I

Элемент опции вывода средств недоступен.,окончание исполнения опциона

CW3

Сценарий 3: Недостаточно наличных в банкомате.

V

V

V

V

I

Предупреждающее сообщение, вернитесь к элементарному потоку, шаг 6, введите количество.

CW4

Сценарий 4: Неправильный PIN-код (возможность ввода более одного раза)

I

V

n/a

V

V

Предупреждающее сообщение, возврат элементарного потокшаг 4. Введите PIN

CW5

Сценарий 4: Неправильный PIN-код (еще один шанс ввести)

I

V

n/a

V

V

Предупреждающее сообщение, возврат элементарного потокшаг 4. Введите PIN

CW6

Сценарий 4: Неправильный PIN-код (больше нет возможности войти)

I

V

n/a

V

V

предупреждающее сообщение,Карта зарезервирована,окончание исполнения опциона

4. Дизайн данных

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

тествариант использование. После утверждения можно определить фактическое значение данных (инвариант теста). матрицу реализации использования) и задайте тестовые данные, например Таблица Как показано в 3-10.

Таблица 3-10 тествариант использованияповерхность

TCID

сцена/состояние

PIN

счет

Введенная (или выбранная) сумма(Юань)

Сумма книги (юань)

Сумма в банкомате(Юань)

ожидаемые результаты

CW1

Сценарий 1: Успешный вывод средств

4987

809-498

50.00

500.00

2 000

Вывод средств успешно. Баланс счета обновлен до 450,00.

CW2

Сценарий 2: В банкомате нет наличных.

4987

809-498

100.00

500.00

0.00

Элемент опции вывода средств недоступен.,окончание исполнения опциона

CW3

Сценарий 3: Недостаточно наличных в банкомате.

4987

809-498

100.00

500.00

70.00

Предупреждающее сообщение, вернитесь к элементарному потоку, шаг 6, введите количество.

CW4

Сценарий 4: Неправильный PIN-код (возможность ввода более одного раза)

4978

809-498

n/a

500.00

2 000

Предупреждающее сообщение, возврат элементарного потокшаг4. ВведитеPIN

CW5

Сценарий 4: Неправильный PIN-код (еще один шанс ввести)

4978

809-498

n/a

500.00

2 000

Предупреждающее сообщение, возврат элементарного потокшаг4. ВведитеPIN

CW6

Сценарий 4: Неправильный PIN-код (больше нет возможности войти)

4978

809-498

n/a

500.00

2 000

предупреждающее сообщение,Карта зарезервирована,окончание исполнения опциона

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

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

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

2) При необходимости используйте метод деления классов эквивалентности для дополнения некоторого тестварианта. использования。

3) Используйте угадывание ошибок, чтобы добавить еще несколько тествариантов использования。

4) Сравните логику программы и проверьте опубликованный тествариант. Логический уровень покрытия использования. Если требуемый стандарт покрытия не достигнут, следует добавить достаточный тествариант. использования。

5) Если описание функции программы содержит комбинацию входных состояний,тогда с самого начала Может Выбиратьдиаграмма причин и следствий。

2. тествариант использованияиздизайншаг

1) Построение базовых функций на основе спецификаций дизайна тествариант использования;

2) граничное значениетествариант использования;

3) переходный период использования;

4) Неверное предположение использования;

5) Аномальный тествариант использования;

6) производительностьтествариант использования;

7) вариант испытания под давлением использования。

3. оптимизациятествариант использованияизметод

1) использоватьдизайнтествариант 8 способов протестировать вариант использование для разложения и слияния;

2) Использование теории генетических алгоритмов для разработки тестварианта использования;

3) Используйте дивергентное мышление, чтобы построить тествариант, когда тест использования;

Издатель: Лидер стека программистов полного стека, укажите источник для перепечатки: https://javaforall.cn/134617.html Исходная ссылка: https://javaforall.cn

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose