В процессе проектирования интерфейса данные ответа должны однозначно соответствовать возвращаемой спецификации ответа. Это может обеспечить согласованность и надежность интерфейса, а также облегчить использование и обслуживание интерфейса. Даже если во время последующих итераций возникнут проблемы, разработчики и тестировщики смогут быстро устранить неполадки и решить их.
использовать Apifox Он может автоматически проверять, стандартизирована ли структура данных, возвращаемая интерфейсом, без необходимости вручную писать сценарии проверки для обнаружения. Далее будет представлена практическая демонстрация на примере сценария.
Практический сценарий
Предположим, существует следующий сценарий:
У объекта есть два свойства:
Теперь требуется:
В этой индивидуальной сцене,как Apifox на основе type предел значения values длина, чтобы возвращался ответ об ошибке, когда отношения между ними не могут совпадать?
Сначала перечислите все возможные спецификации структуры данных в соответствии с требованиями:
// Первый тип
{
"type": "fixed",
"values": ["1"]
}
// Второй вид
{
"type": "range",
"values": ["1","2"]
}
// Третий вид
{
"type": "other",
"values": ["1","2","89","67"]
}
Определить обратный ответ
Согласно требованиям, между ожидаемыми данными ответа и возвращенным ответом существуют следующие три соответствующие ситуации. В противном случае будет возвращен ошибочный ответ.
Спецификация 1: Успешный ответ на фиксированные параметры
Установите тип строкового типа, добавьте значение перечисления к фиксированному; установите значения типа массива и ограничьте количество выводимых элементов только 1, а элементы внутри него имеют строковый тип.
Спецификация 2: Параметр диапазона отвечает успешно
Установите тип типа строки, добавьте значение перечисления в диапазон; установите значения типа массива и ограничьте его максимальное и минимальное количество элементов до 2, а элементы внутри него должны быть строкового типа.
Спецификация 3: На другой параметр успешно ответили
Установите тип типа строки и добавьте значение перечисления к другому; установите значения типа массива без ограничений на максимальное и минимальное количество элементов, а элементы внутри него имеют строковый тип.
После определения примера успешного ответа,использовать Время, когда делается запрос через интерфейс,Вы можете определить, соответствуют ли возвращенные данные интерфейса спецификации, по статусу ответа.
Подготовка данных сцены
Можетиспользовать Apifox изРасширенная функциональность Mockимитироватьинтерфейсданные。Судя по описанию сцены,мы должныдляего определение 5 разные типы Mock данные, разделенные на 3 успешная проверка, 2 Неудачная проверка.
Выберите «Режим документа», нажмите «Расширенный макет» и создайте новое желание.
1. Добавьте ожидание, что «когда значение типа фиксировано, длина значения равна 1»:
2. Добавьте ожидание, что «когда значением типа является диапазон, длина значения равна 2»:
3. Добавлено ожидание, что «когда значение типа другое, значения не имеют ограничения по длине»:
4. Добавлено «Когда type Значение fixed час values длинаНе 1」изожидать:
5. Добавлено «Когда type Значение range час values длинаНе для двоих」изожидать:
После завершения определения фиктивных данных можно вызвать интерфейс и проверить спецификации структуры данных в возвращенном ответе.
Данные ответа на проверку
Между данными ответа и спецификацией возвращенного ответа должна существовать соответствующая связь.,В противном случае появится сообщение о том, что проверка не удалась. Во время процесса вызова и необходимой проверки и проверки возвращаемого результата руководить,Это гарантирует правильность и полноту возвращаемых результатов. Это может эффективно снизить вероятность сбоя или ошибки вызова интерфейса.,Обеспечить согласованность и надежность интерфейса.,Сократите последующие затраты на техническое обслуживание.
Проверка «Спецификация 1»
В «Спецификации 1» требуется, чтобы type из Значение fixed час,values множествосерединаВывод только 1 значенияТалантливое видениедляпроходитьданныепроверка структуры:
Если значение типа не фиксировано, возвращаемая структура данных будет иметь ошибку проверки:
если values из Значение null или более чем 1 индивидуальный,Проверка структуры данных также сообщит об ошибке:
Проверка «Спецификация 2»
В «Спецификации 2» требуется, чтобы typeиз Значение range час,values множествосерединаТолько вывод 2 индивидуальныйчислоценитьТалантливое видениедляпроходитьданныепроверка структуры:
если type Значение не диапазон, возвращаемая структура данных имеет ошибку проверки:
если values из Значение null или нет для 2 индивидуальныйценить,Проверка структуры данных также сообщит об ошибке:
Проверка «Стандарт 3»
Требования «Стандарта 3» относительно мягкие. typeиз Значение other час, что угодно values Независимо от того, сколько значений будет выведено в массив, они будут считаться прошедшими проверку структуры данных:
если type Значение не в противном случае возвращаемая проверка структуры данных также сообщит об ошибке:
Подвести итог
Согласно приведенному выше случаю, мы можем понять, что в Apifox Очень удобно определять структуры данных и проверять, стандартизированы ли данные интерфейса. Хотите узнать больше сопутствующих знаний, таких как импорт интерфейса, Mock Для таких функций, как данные и автоматическое тестирование, нажмите бесплатноиспользовать。