Черный ящик тестирования программного обеспечения_Отчет об испытаниях черного ящика тестирования программного обеспечения
Черный ящик тестирования программного обеспечения_Отчет об испытаниях черного ящика тестирования программного обеспечения

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

1. Концепция тестирования «черного ящика»

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

Тестирование «черного ящика» в основном выявляет следующие типы ошибок:

  1. Функциональная ошибка, основанная на спецификации
  2. Ошибки поведения компонента или системы на основе спецификаций
  3. Ошибки производительности, основанные на спецификациях
  4. Ошибки использования, с которыми сталкивается пользователь
  5. Ошибка интерфейса черного ящика

2. Характеристики тестирования методом «черного ящика»

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

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

Вообще говоря, тестирование методом «черного ящика» имеет следующие характеристики:

  1. Для более крупных единиц кода (подсистемы или даже уровня системы), чем тестирование. белого ящика. КПД должен быть высоким;
  2. Тестировщикам не нужно знать детали реализации программного обеспечения, включая конкретный язык программирования;
  3. Тестирование проводится с точки зрения пользователя, его легко понять и принять;
  4. Помогает выявить любые несоответствия или двусмысленности в спецификациях;
  5. Без четких и кратких спецификаций сложно разработать тестовые сценарии;
  6. Не имея возможности контролировать внутренний путь выполнения, будет много внутренних путей программы, которые не были проверены;
  7. Невозможно напрямую ориентироваться на определенные сегменты программы, эти программы могут быть очень сложными (и, следовательно, могут скрывать больше проблем)

3. Метод тестирования «черного ящика»

3.1. Метод разделения классов эквивалентности.

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

3.1.1. Применение метода разделения классов эквивалентности.

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

3.1.2. Эффективное разделение классов эквивалентности.

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

3.1.3. Недействительное разделение классов эквивалентности.

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

3.1.4. Метод разделения классов эквивалентности.

Разделить на интервал: при вводе диапазона значений или количества значений, указанных в условии ввода, можно определить один действительный класс эквивалентности и два недействительных класса эквивалентности. Разделить по значению: В наборе значений, которые определяют входные данные (при условии, что имеется n значений), и программе необходимо обрабатывать каждое входное значение отдельно, можно определить n допустимых классов эквивалентности и один недопустимый класс эквивалентности. Деление по набору значений: в случае установления правил, которым должны соответствовать входные данные, можно определить один действительный класс эквивалентности и несколько недействительных классов эквивалентности. Разделение по ограничениям или планам: когда входные условия определяют набор входных значений или определяют условия «должно быть», можно определить действительный класс эквивалентности и недопустимый класс эквивалентности. Разделение по методу обработки: когда определено, что каждый элемент в разделенном классе эквивалентности обрабатывается программой по-разному, класс эквивалентности следует дополнительно разделить на более мелкие классы эквивалентности.

3.1.5. Принципы разделения классов эквивалентности.

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

3.1.6. Примеры разделения классов эквивалентности.

Предположим, вы хотите ввести дату. Дата ограничена периодом с января 1990 г. по декабрь 2049 г. Указано, что дата состоит из 6 цифровых символов. Первые 4 цифры представляют год, а последние 2 цифры представляют месяц. Теперь используйте метод разделения классов эквивалентности для разработки тестовых примеров для проверки «функции проверки даты» программы. 1) Разделите классы эквивалентности и пронумеруйте их. В следующей таблице показаны результаты разделения классов эквивалентности.

Введите класс эквивалентности

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

Неверный класс эквивалентности

Тип и длина даты

①6-значные символы

②Есть нецифровые символы. ③Менее 6 цифровых символов ④Более 6 цифровых символов

Годовой диапазон

⑤Между 1990–2049 гг.

⑥Менее 1990 г. ⑦ Более 2049

диапазон месяцев

⑧Между 01~12

⑨Равно 00 ⑩ Больше 12

2) Разработайте тестовые примеры, охватывающие все существующие классы эквивалентность имеет 3 действительные, указанные в таблице классы эквивалентности,Числа ①, ⑤ и ⑧ соответственно.,Разработаны следующие тестовые примеры:

данные испытаний

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

крышкадействительные классы эквивалентности

200211

Ввод действителен

①、⑤、⑧

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

данные испытаний

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

крышка Неверный класс эквивалентности

95June

Неверный ввод

20036

Неверный ввод

2001006

Неверный ввод

198912

Неверный ввод

200401

Неверный ввод

200100

Неверный ввод

200113

Неверный ввод

3.2. Метод анализа граничных значений.

3.2.1. Концепция.

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

3.2.2. Применение метода анализа граничных значений.

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

3.2.3. Отличие метода анализа граничной стоимости от метода деления эквивалентной стоимости.

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

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

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

элемент

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

Идеи дизайна тестовых примеров

характер

Начальный-1 характер/Конец+1 характер

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

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

Минимальное значение -1/Максимальное значение +1

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

космос

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

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

3.2.5. Внутреннее граничное значение.

В большинстве случаев граничное Условия значения — это соображения, которые необходимо учитывать на основе функционального дизайна приложения. Их можно получить из спецификаций программного обеспечения и здравого смысла, и конечный пользователь может легко обнаружить проблему. Однако в процессе разработки контрольного примера некоторые граничное Условие значения не обязательно предъявлять пользователю. Некоторые говорят, что пользователю трудно его заметить, но в то же время оно относится к граничному условию в рамках теста, которое называется условием. внутреннее граничное значениесостояниеилиребенокграничное значениесостояние。 внутреннийграничное Основные условия значимости следующие: 1、числовое значениеизграничное Тест значения: Компьютеры работают на основе двоичного кода, поэтому любое числовое программное обеспечение Операции значения имеют определенные ограничения диапазона.

элемент

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

кусочек

0 или 1

байт

0 ~ 255

слово

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

Тысяча (К)

1024

Мега (М)

1048576

Джи (G)

1073741824

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

характер

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

пустой (ноль)

0

космос

32

Вводной характер

33~126

0~9

48~57

A~Z

65~90

a~z

97~122

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

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

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

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

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

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

-25°C~+60°C

3.2.6 Принципы анализа граничных значений.

1. Если входное условие указывает диапазон значений, следует брать значение, которое только что достигает этого диапазона. значение, а значения сразу за границей этого диапазона используются в качестве входных данных теста. 2. Если условие ввода указывает количество значений, используйте максимальное число, минимальное число, число на 1 меньше минимального числа и число на 1 больше максимального числа в качестве данных. испытаний。 3. В соответствии с каждым выходным условием в спецификации используйте принцип 1. Если выходное условие определяет диапазон значений, следует брать значение, которое только что достигает этого диапазона. значение, а значения сразу за границей этого диапазона используются в качестве входных данных теста. 4. В соответствии с каждым условием вывода в спецификации используйте принцип 2. Если условие вывода определяет количество значений, используйте максимальное число, минимальное число, на 1 меньше минимального числа и на 1 больше максимального числа в качестве номер данных. испытаний。 5. Если в программе используется внутренняя структура данных, в качестве тестового примера следует выбрать значение на границе внутренней структуры данных. 6. Проанализируйте спецификации, чтобы найти другие возможные граничные условия.

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

3.3.1. Концепция.

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

3.3.2. Применение метода угадывания ошибок.

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-карту и используйте функцию «быстрого набора», чтобы вызвать цифры недействительного номера.

3.3.3 Ссылки на распространенные варианты использования в Интернете.

Библиотека функциональных тестовых примеров

1. Проверка ввода

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

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

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

3.Дата、Проверка ввода времени: введите любой характер соответственно、любое число、Данные в формате без даты、Неправильная дата (неправильная дата високосного года)、нулевойценить、нулевойбелыйценить。Нетзаконныйизвходить,Система дает необходимыеизсудить Информация о прерывании. Примечание. Некоторые системы не позволяют вводить дату и время после текущего дня или до него; некоторые системы автоматически заполняют дату и время с помощью JavaScript. В настоящее время вам необходимо обратить внимание на то, можно ли ввести дату и время вручную. Посмотрите, чтобы заполнить ввод

4. Поле выбора из нескольких списков: проверьте, можно ли выбрать несколько вариантов и можно ли полностью отобразить данные в поле со списком. Если в списке слишком много данных, их необходимо отсортировать в определенном формате.

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

6. Большое поле ввода текста (textArea). Хотя оно может удовлетворить ввод больших объемов данных.,Но лучше было бы четко указать ограничение длины входного характера,И это следует делать в сочетании с «проверкой ввода символов». Следует отметить, что,Пунктуация должна быть разрешена

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

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

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

10. Проверка формата и правил ввода. Когда для ввода требуется определенный формат, система должна иметь функцию запроса пользователя на ввод информации. Например, вы можете ввести 18 или 15 цифр для номера удостоверения личности. Последняя цифра некоторых удостоверений личности — это буква. Существуют определенные правила для указания дня рождения и идентификационного номера.

11. Проверка ввода для позиционирования системной ошибки: при возникновении проблемы с вводом она фиксируется системой. В это время курсор на странице может найти поле ввода, в котором произошла ошибка.

12. Проверка ввода переключателя и поля множественного выбора: переключатель должен проверить, действительны ли значения переключателя; поле множественного выбора должно проверить, действительны ли значения поля множественного выбора; .

13. Проверка кода подтверждения: при проверке ввода кода подтверждения.,Первый тест с «проверкой ввода характера»,Тогда стоит обратить внимание на,При использовании резервного варианта IE для обновления,Отображаемый код проверки должен соответствовать фактическому коду проверки системы. Если код подтверждения отображается в виде изображения,Однако картина неполная из-за того, что другие источники (например, Интернет) не могут ее увидеть.,Система должна позволять повторный захват,Полное обновление страницы лучше не делать.

2. Проверка работоспособности (Чехия)

Эта библиотека вариантов использования в основном предназначена для операций со страницами.

1. Проверка ссылки страницы: есть ли у каждой ссылки соответствующая страница и корректно ли переключение между страницами.

2. Проверка релевантности: повлияет ли удаление/добавление одного элемента на другой элемент?,если это повлияет,Правильны ли эти эффекты?

3. Проверьте правильность функций кнопок: правильность таких функций, как добавление, удаление, изменение и проверка.

4. Отправьте форму повторно. Если запись была успешно отправлена, используйте IE для отката, а затем отправьте ее еще раз, чтобы проверить, обработала ли ее система.

5. Несколько откатов IE. Проверьте использование откатов IE несколько раз. При наличии откатов выполните откат, вернитесь к исходной странице, снова откатите, повторите несколько раз, чтобы увидеть, есть ли ошибка.

6. Проверка сочетания клавиш: поддерживаются ли общие сочетания клавиш, такие как Ctrl+C, Ctrl+V, Backspace и т. д., и существуют ли ограничения на сочетания клавиш для некоторых полей, которые не позволяют вводить информацию, например, выбор людей. и даты.

7. Проверка клавиши ввода: нажмите клавишу Enter сразу после ввода, чтобы увидеть, как система обрабатывает это и может ли она сообщить об ошибке.

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

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

3. Тестовый пример модуля входа в систему

Эта библиотека вариантов использования в основном предназначена для модуля входа в систему. Необходимо объединить с библиотекой вариантов использования «Проверка контроля доступа (FWKZYZ)».

1. Ввод имени для входа: выполните «проверку ввода». Необходимо обратить внимание на то, чувствительно ли имя для входа к регистру и пробелам.

2. Ввод пароля: выполните «проверку ввода».

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

4. Операция сброса: при выполнении операции сброса.,Все данные на текущей странице удалены.

4. Добавьте тестовые сценарии работы (ZJ).

Эта библиотека вариантов использования в основном предназначена для добавления операций.

1. Добавьте входной контент и выполните «проверку ввода».

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

3. При успешном или неудачном добавлении должны появиться необходимые информационные подсказки.

4. Увеличение данных файла. Некоторые увеличения включают увеличение данных базы данных и увеличение количества некоторых файлов. На данный момент данные будут сохраняться в двух местах, поэтому во время тестирования соответствующие данные необходимо полностью проверить.

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

5. Удаление тестового примера операции (SC)

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

1. Выберите поле данных, которое необходимо удалить. Иногда система удаляет данные на основе идентификатора, а иногда — на основе имени. При тестировании следует уделять больше внимания. Как правило, удаление выполняется на основе идентификатора, поскольку если вы удаляете данные по имени, могут возникнуть дубликаты. имена.

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

3. Если удаленные данные все еще содержат файлы, Western Medicine проверит, были ли удалены данные в базе данных и файлы на жестком диске одновременно.

4. При успешном или неудачном удалении данных должно появиться ответное сообщение.

5. Выполнить «проверку работы»

6. Измените тестовые сценарии работы (XG).

Эта библиотека вариантов использования в основном предназначена для операций модификации.

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

2. Увеличение лимита ввода на странице должно соответствовать изменению лимита ввода на странице.

3. После успешного или неудачного изменения должны появиться соответствующие информационные подсказки.

7. Тестовый пример операции запроса (CX)

Эта библиотека вариантов использования в основном предназначена для операций запроса.

1. Для запроса условного ввода сначала выполните «проверку ввода» поля условного ввода.

2. Запрос комбинации условий: объединение нескольких условий для запроса, а результаты можно проверить через базу данных. Следует отметить, что количество результатов данных всего запроса данных и условного запроса должно быть согласованным. Кроме того, если встречается период времени запроса определенного дня, некоторые базы данных считают, что один день не включает 0:00. , и некоторые базы данных думают, что это так.

3. Все результаты запроса должны быть упорядочены в определенном порядке и могут быть упорядочены по идентификатору или имени.

4. При успешном или неудачном выполнении запроса система должна выдать необходимые информационные подсказки.

8. Тестовый пример операции перелистывания страниц (FY)

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

1. Когда объем данных большой, его необходимо отображать на страницах. Количество строк, отображаемых на каждой странице, не должно превышать 20. Лучше всего иметь порядковый номер в списке на каждой странице, и он должен быть. определенное различие в цвете между строками, что способствует поиску пользователя

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

3. Данные, отображаемые на каждой странице кнопки перелистывания страниц, должны быть точными, чтобы не было данных, которые невозможно найти. Лучший способ — объединить их с базой данных для проверки.

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

5. При переходе на определенную страницу в системе должна быть явная отметка с указанием номера страницы.

9. Тест страницы ошибок (CW)

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

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

2. Когда система занята и не может вовремя предоставить правильную информацию, система может открыть дружественную страницу с ошибкой, например: «Пожалуйста, повторите попытку позже» и другие подсказки.

3.4. Причинно-следственная диаграмма.

3.4.1. Концепция.

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

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

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

1) Четыре символа обозначают четыре причинно-следственные связи в спецификациях. 2) Причинно-следственная диаграмма использует простые логические символы для соединения левого и правого узлов прямыми линиями. Левый узел представляет входной статус (или причину), а правый узел представляет выходной статус (или результат). 3) C1 представляет причину, обычно размещаемую в левой части рисунка; e1 представляет результат, обычно размещаемый в правой части рисунка. И C1, и e1 могут принимать значение 0 или 1. 0 означает, что определенное состояние не возникает, а 1 означает, что определенное состояние имеет место.

2. Связь между диаграммами причин и следствий.

  • Идентичность: если 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; «И» также может иметь любое количество входов.

3. Ограничения причинно-следственных диаграмм

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

  • Ограничение 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, и ни a=1, ни b=1 не могут возникнуть.

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

3.4.3. Применение диаграммы причинно-следственных связей.

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

3.4.4. Метод построения тестового примера с причинно-следственной диаграммой.

1) Руководство по функциям разделения Проанализируйте техническое задание, разделите входные условия на несколько групп, а затем для каждой группы используйте причинно-следственную диаграмму, что позволяет сократить количество комбинаций входных условий. 2) Определите «причину» и «следствие» и пронумеруйте их. «Причина» относится к входному условию или классу эквивалентности входного условия; «результат» относится к выходному условию или преобразованию системы. Например, обновление основного файла является системным преобразованием. Каждой причине и следствию соответствует узел причинно-следственной диаграммы. Когда причина или следствие установлены (или происходят), значение соответствующего узла записывается как 1, в противном случае — как 0. 3) Нарисуйте причинно-следственную диаграмму на основе связей между причинами и следствиями, указанными в функциональном описании. Основные символы причинно-следственной диаграммы показаны ниже:

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

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

причина

Разрешенные комбинации причин

промежуточный узел

Различные комбинации причин под промежуточный Значение узла

результат

Значение результата при различных сочетаниях факторов

6) Разработайте тестовые примеры на основе таблицы решений. Разработайте тестовый пример для каждого столбца приведенной выше таблицы решений.

3.4.5. Пример.

В автоматы по продаже напитков можно вкладывать монеты номиналом 50 центов и 1 юань. Пользователи могут выбирать напитки с помощью кнопок «апельсиновый сок» и «пиво». Когда в торговом автомате нет сдачи, загорается индикатор подсказки. Когда пользователь кладет монету достоинством 50 центов и нажимает кнопку «апельсиновый сок» или «пиво», торговый автомат доставит соответствующий напиток. Когда пользователь кладет монету номиналом 1 юань и нажимает кнопку «апельсиновый сок» или «пиво», если в торговом автомате есть сдача, соответствующий напиток будет выдан, а 50 центов будут возвращены, если в торговом автомате его нет; смените, напиток не будет выдан, и верните монету в 1 юань. (1) Проанализируйте характеристики и перечислите причину и результат. Согласно спецификации, условия ввода, отражающие причину: вставьте монету номиналом 1 юань, вставьте монету достоинством 50 центов, нажмите кнопку «апельсиновый сок», нажмите кнопку «пиво». Выходные условия, отражающие результат: вернуть монету 1 юань, вернуть монету 50 центов, выдать напиток «апельсиновый сок», выдать напиток «пиво». Поскольку «в торговом автомате есть сдача» является основой для определения того, можно ли найти сдачу при вставке монеты в 1 юань, это также можно рассматривать как входное условие, то есть причину. Соответствующим результатом является то, что индикатор торгового автомата горит (или гаснет). Следовательно, причина и результат для этого примера следующие: причина: 1 —— В торговом автомате есть сдача. 2 — Вставьте монету номиналом 1 юань. 3 — Вставьте монеты номиналом 50 центов. 4. Нажмите кнопку апельсинового сока. 5 — Нажмите кнопку пива.

результат: 21——На торговом автомате горит индикатор «нет сдачи». 22 — Возврат монеты в 1 юань. 23 — Возврат 50 центов 24 - Подарите апельсиновый сок 25 - Раздайте пиво и напитки (2)、всепричина Узлы перечислены слева,узлы результатов перечислены справа,Нарисуйте диаграмму причин и следствий,Как показано ниже:

впромежуточный Значение узла следующее: Узел 11 означает вставку монеты номиналом 1 юань и нажатие кнопки напитка. Узел 12 представляет собой нажатие кнопки «Апельсиновый сок» или «Пиво». Узел 13 указывает, что необходимо сдать 50 центов и в автомате есть сдача. Узел 14 указывает на то, что деньги выплачены. (3) Добавьте ограничения на диаграмму причин и следствий. Поскольку причины 2 и 3 не могут возникнуть одновременно, а причины 4 и 5 не могут возникнуть одновременно, необходимо добавить ограничение E, как показано на рисунке выше. (4) Нарисуйте таблицу суждений на основе диаграммы причин и следствий. Таблица суждений, основанная на диаграмме причин и следствий, выглядит следующим образом:

Заштрихованная часть представляет собой невозможную комбинацию условий.,Кроме того, когда все причины2,3,4,5 равны 0,Показывает, что ни монета, ни кнопка не нажаты,В настоящее время это означает, что торговый автомат не используется.,поэтому Вам также не нужно разрабатывать для них тестовые примеры.。 (5) Разработайте тестовый пример для каждого значимого столбца таблицы решений.

3.5. Метод, основанный на таблице суждений/таблице решений.

3.5.1. Концепция метода, основанного на таблице решений.

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

3.5.2 Состав судейской таблицы.

1) Заглушка условия (Условие Заглушка): Перечислены все условия задачи. Обычно считается, что порядок перечисления условий не имеет значения. 2) Стопка действий (Действие Заглушка): список возможных действий, связанных с проблемой. Ограничений на порядок выполнения этих операций нет. 3) состояниеэлемент(Condition Ввод): перечисляет значения условий в левом столбце. Истинные или ложные значения во всех возможных ситуациях. 4) действиеэлемент(Action Вступление): перечисляет действия, которые следует предпринять при различных значениях элемента условия. 5) правило: Конкретное значение любой комбинации условий и соответствующее действие, которое необходимо выполнить. Столбец в таблице решений, который проходит через элемент условия и элемент действия, является правилом.

3.5.3. Преимущества и недостатки.

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

3.5.4. Применимые условия.

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

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

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

3.5.5 Шаги по созданию таблицы оценок.

  • Определите количество правил, если существует n условий. Каждое условие имеет два значения (0,1), поэтому существуют clip_image006 какое-то правило.
  • Перечислите все стопки состояний и действий.
  • Заполните элемент условий.
  • Заполните элемент действия. Получите первоначальную таблицу суждений.
  • Упрощенная таблица решений (объединение аналогичных правил (те же действия)),Как показано в таблице ниже, два столбца слева можно объединить в один столбец справа.

правило выбиратьэлемент

1

2

Объединить 1, 2

3

4

Объединить 3, 4

Условие 1

Y

Y

Y

Y

Y

Y

Условие 2

Y

N

Y

Условие 3

N

N

N

N

N

N

Действие 4

3.5.6 Пример создания таблицы определений.

По трем произвольным положительным числам a, b, c определить, могут ли они образовывать треугольник, и определить типы треугольников, классифицированные по сторонам. 1、 Чтобы определить количество правил, сначала определите количество условий, а именно: Треугольники делятся по сторонам: равнобедренный треугольник, равносторонний треугольник и общий треугольник. На основании анализа условия определяются следующим образом: a<b+c、b<a+c、c<a+b、a=b、b=c、c=a,Поэтомуправилоизиндивидуальный Есть несколько2из6вторая власть64индивидуальный 2. Таблица первоначальных суждений

1~32

33~48

49~56

57

58

59

60

61

62

63

64

a<b+c

N

Y

Y

Y

Y

Y

Y

Y

Y

Y

Y

b<a+c

N

Y

Y

Y

Y

Y

Y

Y

Y

Y

c<a+b

N

Y

Y

Y

Y

Y

Y

Y

Y

a=b

N

N

N

N

Y

Y

Y

Y

b=c

N

N

Y

Y

N

N

Y

Y

a=c

N

Y

N

Y

N

Y

N

Y

Общий треугольник

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

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

нетреугольный

Не установлено

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

1~32

33~48

49~56

57

58

59

61

64

a<b+c

N

Y

Y

Y

Y

Y

Y

Y

b<a+c

N

Y

Y

Y

Y

Y

Y

c<a+b

N

Y

Y

Y

Y

Y

a=b

N

N

N

Y

Y

b=c

N

N

Y

N

Y

a=c

N

Y

N

N

Y

Общий треугольник

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

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

нетреугольный

Не установлено

Согласно приведенной выше таблице оценок, варианты использования следующие:

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

a

b

c

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

T01

4

1

2

нетреугольный

T02

1

4

2

нетреугольный

T03

1

2

4

нетреугольный

T04

3

4

6

Общий треугольник

T05

3

4

3

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

T06

4

3

3

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

T07

3

3

4

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

T08

3

3

3

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

3.6. Метод государственной миграции.

3.6.1. Понятие метода государственной миграции.

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

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

Функция тестируемой системы зависит от состояния данных, как, например, в общих системах рабочих процессов (ОА), и метод миграции состояния идеально подходит для этого типа программного обеспечения. 1. Методы тестирования конечных автоматов 2. Задайте условие триггера 3. Часто используется при преобразовании веб-страниц, автоматическом тестировании, тестировании протоколов связи и т. д.

3.6.3. Этапы сценария использования диаграммы миграции состояний.

1. Проанализировать техническое задание и выяснить статус и условия срабатывания (проанализировать взаимосвязь между статусными условиями) 2. Нарисуйте диаграмму перехода состояний (задайте начальное состояние, начальное состояние относительное, состояние представлено кружком, состояние представлено отрезком линии со стрелкой) 3. Нарисуйте таблицу состояний-событий (четыре столбцы) через диаграмму состояний, предыдущее состояние, условие, следующее состояние, информацию о выполненных поведенческих действиях) 4. Получение тестового пути из дерева переходов состояний. 5. Напишите легальные тестовые примеры в соответствии с маршрутом тестирования. 6. Пишите нелегальные тестовые случаи

3.6.4. Конкретные примеры.

Когда принтер изначально находится в состоянии готовности, он может получать задания на печать, переходить в состояние печати и начинать печать во время процесса печати. ​​В случае сбоя принтера принтер будет находиться в состоянии неисправности, ожидая возникновения неисправности; устранена; после устранения неисправности принтер возвращается в состояние печати, продолжайте печать исходного документа во время процесса печати; если бумага закончится, принтер приостановит печать и перейдет в состояние нехватки бумаги. вставлен, принтер автоматически обнаружит, восстановит состояние печати и продолжит печать, задание печати выполнено, принтер вернется в состояние готовности; шаг: 1. Проанализируйте фрагменты спроса и выясните все состояния и условия перехода между состояниями. Статус: готово, печать, неисправность, закончилась бумага Условия перехода: команда печати, сбой, устранение неисправности, отсутствие бумаги, вставка бумаги, печать завершена. 2. Задайте начальное состояние и нарисуйте диаграмму перехода состояний.

3. Создать график статусов

Предыдущий статус

Состояние перехода

следующее состояние

Производительность

Готовое состояние

команда печати

Статус печати

Индикатор печати горит

Статус печати

Печать завершена

Готовое состояние

Индикатор готовности горит

Статус печати

Закончилась бумага

Закончилась бумагасостояние

Закончилась бумагасвет включен

Статус печати

неисправность

статус неисправности

Горит индикатор неисправности

статус неисправности

Восстановление

Статус печати

Индикатор печати горит

Закончилась бумагасостояние

Загрузите бумагу

Статус печати

Индикатор печати горит

4. Создайте дерево перехода состояний.

5. Получите тестовый путь из дерева состояний: Готово—Печать—Закончилась бумага—Распечатать Готов—Печать—Ошибка—Печать Готово—Печать—Готово 6. Напишите тестовые примеры в соответствии с маршрутом тестирования. 7. Добавьте незаконные тестовые случаи Например, непосредственно Готовое состояние—-статус неисправностиили者 就绪—-Закончилась бумагаждать

3.6.5. Резюме

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

3.7. Ортогональный экспериментальный метод.

3.7.1. Понятие ортогонального экспериментального метода.

При использовании диаграмм причин и следствий для разработки тестовых примеров причинно-следственную связь между причиной как входным условием и выходным результатом иногда трудно получить из спецификации требований к программному обеспечению. Часто причинно-следственная связь настолько велика, что тестовые примеры получаются на основе. на причинно-следственной диаграмме Число поражает, дайте знать программного Программное обеспечение сопряжено с тяжелым бременем. Чтобы эффективно и разумно сократить время и стоимость тестирования, для разработки тестовых примеров можно использовать метод ортогонального планирования эксперимента. Метод проектирования для изучения множества факторов и уровней. Он выбирает некоторые репрезентативные точки из комплексного теста на основе ортогональности для тестирования. Эти репрезентативные точки имеют характеристики «равномерно распределенных, аккуратных и сопоставимых». Ортогональный экспериментальный план — это метод, основанный на ортогональных таблицах, высокоэффективный, быстрый и экономичный тест. . Ортогональный экспериментальный план (Ортогональный Experimental design) — метод проектирования многоуровневого обучения. Он основан на ортогональности и выбирает некоторые репрезентативные точки из всех комбинаций уровней теста для проведения экспериментов. Благодаря анализу этой части теста достигается всестороннее понимание. получено Поэкспериментируйте с ситуацией, чтобы найти оптимальную комбинацию уровней. Например, для проверки нормальных значений, значений ошибок и граничных значений. Влияние значения на определенный программный интерфейс. Для каждого фактора задано 3 уровня для экспериментов. Афактор – нормальная величина, пусть A 1、A 2 、A 3 3 уровня; коэффициент B – значение ошибки, пусть B1. 、B 2 、B 3 3 уровень С; фактордляграничное значение,настраиватьC 1、C 2 、C 3 3 уровня. Это 3 фактор 3 В тесте уровня существует 27 (т.е. 3^3) возможных комбинаций между уровнями каждого фактора. Комплексное тестирование: можно проанализировать влияние и взаимодействие каждого фактора, а также выбрать оптимальную комбинацию уровней. Однако комплексный тест содержит большое количество горизонтальных комбинаций и требует большой рабочей нагрузки, которая в некоторых случаях может быть невыполнимой. Если основная цель эксперимента – найти оптимальное сочетание уровней , то ортогональную таблицу можно использовать для планирования и организации эксперимента. Основными характеристиками проектирования ортогональных тестов являются: использование частичных тестов для замены комплексных тестов и понимание ситуации с комплексными тестами посредством анализа частичных тестов. Именно потому, что ортогональный тест использует частичные тесты вместо комплексных тестов. , невозможно анализировать каждый факторный эффект и взаимодействие по отдельности, как комплексный тест, когда взаимодействия существуют, может возникнуть путаница взаимодействий; Хотя ортогональная экспериментальная схема имеет вышеуказанные недостатки, она позволяет найти оптимальную комбинацию уровней посредством частичных экспериментов, поэтому она очень популярна среди практиков. Что касается вышеизложенного 3 фактор 3 Тест уровня , если не учитывать взаимодействие, можно использовать ортогональную таблицу L9(33) Расположение означает, что требуется 9 экспериментов и можно наблюдать до 3 факторов. Каждый фактор имеет 3 уровня. План тестирования содержит только 9 комбинаций уровней, что может отражать ситуацию комплексного теста с 27 комбинациями уровней в тесте. план. Найдите лучшие условия производства. Преимуществами этого метода являются меньшее количество тестов, хорошие результаты, простота метода, удобство использования и высокая эффективность.

3.7.2. Этапы ортогонального экспериментального метода.

(1) Конечнофактор Фактор здесь относится к программному обеспечению, которое влияет на результат работы программного обеспечения. (2) Определите диапазон значений и набор коэффициентов (этот шаг является подготовкой к шагу 3). Диапазон значений коэффициента относится к диапазону значений входных данных программного обеспечения и доступных аппаратных ресурсов. (3) Определите уровень каждого фактора По диапазону значений факторили набора , используя деление классов эквивалентности, граничное анализ значений и другие выводы программного Обеспечить технологию, выбрать действительное в пределах диапазона значений или набора каждого фактора классы эквивалентности、Неверный класс эквивалентность, точно равная, чуть больше или чуть меньше граничного значение и другие репрезентативные тестовые значения. (4) Выберите ортогональную таблицу В соответствии с установленным фактором и уровнем ,Выберите подходящую ортогональную таблицу. Если подходящей ортогональной таблицы нет или требуется слишком много тестовых примеров. , необходимо настроить фактор и уровень. (5) Анализ результатов испытаний Добавляйте комбинации, которые кажутся вам подозрительными и не отображаются в таблице.

3.7.3. Ортогональная таблица.

Горизонтальные комбинации, выбранные в ортогональном тесте, заносятся в таблицу, которая называется ортогональной таблицей. Состав ортогональной таблицы: (1) Количество строк (прогонов): количество строк в ортогональной таблице, то есть количество тестов, и количество тестовых примеров, разработанных с помощью метода ортогонального эксперимента. (2) Факторы: количество столбцов в ортогональной таблице, то есть проверяемые функциональные точки. (3) Уровни: максимальное количество значений, которое может получить любой отдельный фактор, то есть входное значение проверяемой функциональной точки. (4), номер строки L (горизонтальный номер фактора), Ортогональные таблицы обладают следующими двумя характеристиками, а именно ортогональностью. Ортогональная таблица должна удовлетворять этим двум характеристикам. Если одна из них не удовлетворяется, это не ортогональная таблица. 1) Количество разных чисел в каждом столбце кажется одинаковым. Эта особенность показывает, что каждый уровень каждого фактора имеет точно такую ​​же вероятность участия в тесте, как и каждый уровень другого фактора, что гарантирует, что вмешательство других уровней фактора устраняется в наибольшей степени на каждом уровне, и тест может быть эффективно сравнивать результаты и определять оптимальные условия испытаний. 2)в любом2Перечислите его горизонтальные компонентыизцифровое выравнивание,Каждая пара чисел встречается одинаковое количество раз. Эта функция обеспечивает равномерное распределение контрольных точек при полной комбинации фактора и уровня.,поэтому Иметь сильныеизпредставитель。

3.7.4. Как выбрать ортогональную таблицу.

– Учитывайте количество факторов (переменных) — Учитывайте количество факторных уровней (значений переменных) – Учитывайте количество строк ортогональной таблицы – Берем тот, у которого наименьшее количество рядов.

3.7.5. Примеры применения экспериментального метода ортогональной таблицы.

Например: при поиске продукта на Taobao условия включают оценку продукта (хорошие отзывы, средние отзывы, плохие отзывы), местоположение (Цзянсу, Чжэцзян, Шанхай), диапазон цен (ниже 100, от 100 до 199 и выше 199). ), бесплатная доставка (бесплатная доставка), отсутствие бесплатной доставки), предполагая, что этот спрос предназначен для богатого второго поколения, затем использовать метод ортогонального эксперимента для анализа этого спроса. шаг: 1. Разделите требования на подсегменты 2. Найдите факторы и состояния факторов. Фактор: оценивать расположение ценовой диапазон Бесплатная доставка

состояние: Хорошие отзывы, нейтральные отзывы, плохие отзывы Цзянсу, Чжэцзян, Шанхай Ниже 100, между 100 и 199, выше 199. Бесплатная доставка, нет бесплатной доставки

3. Построение таблицы состояния факторов.

фактор/статус

оценивать

расположение

ценовой диапазон

Бесплатная доставка

Статус 1

Хорошие отзывы

Река

100 или меньше

Бесплатная доставка

Статус 2

Нейтральный рейтинг

Чжэцзян

100~199

Нет Бесплатная доставка

Статус 3

Плохой отзыв

Шанхай

199 и выше

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

фактор/статус

оценивать

расположение

Бесплатная доставка

Статус 1

Хорошие отзывы

Река

Бесплатная доставка

Статус 2

Нейтральный рейтинг

Чжэцзян

Нет Бесплатная доставка

Статус 3

Шанхай

5. Используйте ортогональные таблицы для построения данных. испытанийнабор Различные причиныребенокизсостояниечисло Нетединый,Используйте логические команды для создания логической диаграммы, и вы сможете создать связь между определенными двумя значениями.,Объедините значение.

фактор/статус

оценивать

расположение

Бесплатная доставка

Статус 1

Хорошие отзывы

Река

Бесплатная доставка

Статус 2

Нейтральный рейтинг

Чжэцзян

Нет Бесплатная доставка

Статус 3

Шанхай

Найдите ортогональную таблицу, соответствующую ближайшему порядку, 3 фактора. 2 состояния, построенные по данным ортогональной таблицы испытанийнабор

фактор/статус

оцениватьA

расположениеB

Бесплатная доставкаC

Статус 1

Хорошие отзывы A1

Рекаили Чжэцзян B1

Бесплатная доставка C1

Статус 2

Нейтральный рейтинг A2

Шанхай B2

Нет Бесплатная доставка C2

Замените A, B и C соответствующими данными B1 — это два значения Река Чжэцзян.

Experiment Number

оцениватьA

расположениеB

Бесплатная доставкаC

1

A1

B1

C1

2

A1

B2

C2

3

A2

B1

C2

4

A2

B2

C1

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

3.7.6. Часто используемые ортогональные таблицы.

3.8. Сценарный метод.

3.8.1. Понятие сценарного метода.

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

3.8.2. Этапы разработки варианта использования.

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

3.8.3. Вариант сценарного метода 1.

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

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

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

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

Аккаунт не существует

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

Ошибка аккаунта

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

Неправильный пароль

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

Никаких дополнительных книг

альтернативный стримекс

Выйти из системы

Определите сценарий на основе элементарного потока и альтернативных потоков:

Сценарий 1 – успешная покупка

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

Сцена 2-Аккаунт не существует

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

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

Сцена 3-Ошибка аккаунта

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

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

сцена4-Неправильный пароль

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

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

Сцена 5-Никаких дополнительных книг

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

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

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

В этом примере для каждого тестового примера существует Идентификатор. тестового набор, условия (или описание), все элементы данных, участвующие в тестовом примере (в качестве входных данных или уже существующие в базе данных) и ожидаемый результат. Создайте матрицу, начав с определения элементов данных, необходимых для выполнения сценария варианта использования. Затем для каждого сценария определите хотя бы один тестовый пример, содержащий соответствующие условия, необходимые для выполнения сценария. Например, в приведенной ниже матрице V (действительный) используется для обозначения того, что это условие должно быть выполнено. VALID (действительный) может быть выполнен только элементарный поток,и I (недействительный) используется для обозначения того, что это условие активирует желаемый альтернативный поток. Использование «н/д» (неприменимо) в следующей таблице указывает, что это условие не применимо к тестовому примеру.

Идентификатор тестового набора

Сценарий/условие

номер счета

пароль

Магазин книг

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

1

Сценарий 1: Успешные покупки

V

V

V

успешные покупки

2

сцена2:Аккаунт не существует

I

n/a

n/a

намекать Аккаунт не существует

3

сцена3:Ошибка аккаунта

I

V

n/a

Если в аккаунте ошибка, вернитесь к шагу 2 элементарного потока.

4

сцена4:Неправильный пароль

V

I

n/a

намекать Неправильный пароль,возвращатьсяэлементарный потокшаг3

5

сцена5:Никаких дополнительных книг

V

V

I

намекать Магазин книг,возвращатьсяэлементарный потокшаг5

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

Идентификатор тестового набора

Сценарий/условие

номер счета

пароль

Магазин книг

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

1

Сценарий 1: Успешные покупки

xu

123456

"Книга"

успешные покупки

2

сцена2:Аккаунт не существует

zhang

n/a

n/a

намекать Аккаунт не существует

3

сцена3:Ошибка аккаунта

zhou

123456

n/a

Если в аккаунте ошибка, вернитесь к шагу 2 элементарного потока.

4

сцена4:Неправильный пароль

xu

123$%^

n/a

намекать Неправильный пароль,возвращатьсяэлементарный потокшаг3

5

сцена5:Никаких дополнительных книг

xu

123456

нулевой

намекать Магазин книг,возвращатьсяэлементарный потокшаг5

3.8.4. Второй вариант сценарного метода.

Пример. Анализ потока сцен банкоматов и разработка тестовых примеров и данных. испытаний  

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

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

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

Аккаунт не существует или ограничен

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

пароль неверный,Также есть возможность войти

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

пароль неверный,Нет возможности ввода

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

Недостаточный баланс на карте

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

Недостаточный баланс в банкомате

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

Превышен максимальный дневной лимит вывода средств

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

Введите сумму, не кратную 100.

Определите сценарий на основе элементарного потока и альтернативных потоков:

Издатель: Full stack программист и руководитель стека, укажите источник для перепечатки: https://javaforall.cn/188652.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