Привет всем, я Фей Ге, программист. Как опытный серверный программист, большинство проектов, которые я делаю, обычно основаны на Swagger для управления документами API, Postman для отладки интерфейса и JMeter для тестирования производительности интерфейса. такие инструменты, как данные RAP и Mock API.
В обычных решениях для каждой функциональной позиции используются разные инструменты, причем каждый инструмент независим друг от друга и вообще не может взаимодействовать. Возникает множество проблем.
Ниже показана ситуация совместной работы команды по общей схеме. Каждый выполняет свою работу. Каждый член набора интерфейсов вводится несколько раз. Их называют командами, но на самом деле они независимы.
Хотя обычно используемый процесс решения является громоздким, совместная работа в команде затруднена.,Да,Был здесь столько лет,Это не значит, что его нельзя использовать,В худшем случае мы все вместе можем работать сверхурочно.
Пока однажды я случайно не узнал об Apifox, инструменте тестирования API на CSDN. Это открыло мне глаза на новую возможность, возможность, которая позволяет интерфейсной и серверной части совместно отлаживать интерфейс без необходимости работать сверхурочно, и возможность, которая позволяет тестировщику не работать так усердно, чтобы повысить производительность. тестирование на Jmeter.
ApifoxКакие инструменты!Откроем официальный сайт Apifox Официальное представление Канкана.
Apifox — это интегрированная платформа для совместной работы по документации API, отладке API, API Mock и автоматическому тестированию API, позиционирующая Postman + Swagger + Mock + JMeter. С помощью одной системы и одних данных мы можем решить проблему синхронизации данных между несколькими системами. Пока документ API определен, отладку API, имитацию данных API и автоматическое тестирование API можно использовать напрямую, не определяя его повторно; документацию API, а также разработку и отладку API можно использовать один и тот же инструмент. После завершения отладки API это можно сделать. гарантированно будет полностью соответствовать определению документа API. Оперативно, своевременно и точно!
Официалка классная, и Apifox четко изложен в одном предложении, но здесь я все же хочу кратко суммировать официальные слова.
Судя по официальному представлению, Apifox в основном предоставляет нам четыре основные функции:
В дополнение к функциям, представленным выше, Apifox также предоставляет готовые функции, такие как непрерывная интеграция CI, операции с базами данных, автоматическая генерация кода, импорт/экспорт данных, совместная работа в команде и многое другое.
Прежде чем перейти к следующему шагу,Вы можете открыть его первым Документация по использованию Apifox взгляни
Загрузка и установка Apifox относительно проста, поэтому я не буду здесь вдаваться в подробности. Адрес загрузки установочного пакета Apifox: ===》Нажмите здесь, чтобы начать установку. После успешной установки вам необходимо зарегистрироваться и войти в систему, прежде чем вы сможете использовать его. После входа вы увидите, что основной интерфейс выглядит следующим образом. В целом: основной интерфейс Apifox имеет понятные команды. Основные функции можно найти с первого взгляда. Основной интерфейс разделен на:
После предварительного понимания Апифокса мы переходим к настоящей боевой фазе. Давайте поговорим о любви с Апифоксом.
Теперь в команде три члена: по одному для фронтенд-разработки, по одному для серверной разработки и по одному тестировщику. Их ситуация показана в следующей таблице:
Имя | Роль |
---|---|
Кодер Файги | серверная разработка |
Сяо Чжан | Фронтенд-разработка |
Сяомэй | Девушка-испытатель |
Сейчас Кодер Файги,Сяо Чжан,Сяомэй каждый установил Apifox на свои компьютеры,Зарегистрируйтесь и войдите в свой клиент Apifox.
Требование проекта — разработать проект управления членством. На этот раз мы собираемся использовать Apifox для совместной разработки и тестирования API.
Прежде чем перейти к сути, давайте посмотрим на наш рабочий процесс после использования Apifox (прелюдия необходима), как показано ниже:
серверная разработка Кодер После того, как Файги создаст команду и проект, ставьте Фронтенд-разработку Сяо. В этот проект были привлечены Чжан и Девушка-испытатель Сяомэй:
Видно, что в Apifox весь процесс полностью замкнутый, без участия какого-либо другого программного обеспечения. Каждый член команды имеет общий набор интерфейсных документов, что действительно удобно и эффективно.
Кодер Файги: Создайте команду, назовем ее: Кодер Файгикоманда,Шаги по созданию командыда:Пример проекта--->Создать новую команду--->Введите название команды--->Нажмитедержать
В Apifox в первую очередь есть команды и проекты. Таким образом, после создания команды вы можете создать новый проект прямо в команде.,просто позвони:Система управления участниками Проект。Создание шаговда:Командный проект---->Новый проект--->Введите название проекта--->держать
Есть три способа пригласить,Здесь я использую метод приглашения по электронной почте.,Возьмите Сяомэй в качестве примера,входить Сяомэйпочтовый ящик--->выбиратьучаствовать Проект--->Нажмитеприглашать Вот и все.
После того, как Сяомэй зайдет в Apifox,Нажмите кнопку «Обновить», чтобы получить приглашение Кодер Файги в окне сообщения.,Нажмите может присоединиться к команде после того, как примете ее.
Пригласите Сяо таким же образом Чжан,Сяо После того, как Чжан также принял приглашение, Кодер Членов команды Файги стало трое, вот Сяо Чжан и Сяомэй имеют те же права, что и обычные участники да (т.е. могут читать интерфейс и изменять интерфейс).
Кодер После того, как команда Файги и проект будут созданы, Файги разработает документ интерфейса, который отличается от Postman: дизайн интерфейса и проектирование интерфейса в Apifox — это две разные концепции. Целью проектирования интерфейса здесь является да. Определить спецификации документа интерфейса。Просто сделайте следующее Прямо сейчас Может
需要注意издаинтерфейсадрес:интерфейс Путь начинается с/начинать,HTTPЧасть соглашенияи Требуется часть доменного имени.существоватьсредаизURL-адрес префиксанастройки в,Обычно простода:http://ip-адрес:номер порта/название проекта。
Основная информация — это, главным образом, имя интерфейса; группировка (если в одном проекте много модулей, вы можете указать разные группы для разных модулей, группировка по умолчанию — это статус корневого каталога (используется для указания текущего состояния интерфейса); , Есть несколько состояний, которые были выпущены, находятся в стадии тестирования, будут заброшены и находятся в разработке. Очень хорошая идея — добавить состояния в интерфейсы, чтобы предотвратить вызов некоторых интерфейсов до того, как они будут разработаны; передний URL), если тот же. Если в проекте имеется несколько URL-адресов, вы можете указать их вручную.
Параметры запроса очень похожи на почтальон, все они основаны на разных типах контента. Установить другой параметр,здесь яНовый интерфейс участниказапроспараметр Форматда:application/json。Apifoxинтимныйиз Увеличивать ПонятноИнтеллектуальное распознавание JSON/XML/быстрый импортиз Функция,Вам нужно всего лишь вставить образец строки json запроса, чтобы извлечь соответствующие поля.,Если полей много,Это избавит вас от необходимости вводить каждый из них вручную.,Это действительно приятно.
ApifoxКроме середины Понятно Можеткнормальныйизнастраиватьпараметримя,Примечание,да Нет, кроме необходимой информации,этовозвращаться Увеличивать ПонятноМакет столбца,Можеткдля каждого поля Установить разныеMockправило(позже Сяо Ассоциация выпускников Чжан (подробное введение). больше столбцов В основном он используется для установки значений по умолчанию, установки диапазонов длин, формата и другой информации, что также является очень полезными функциями.
Возвращаемый ответ аналогичен параметрам запроса. Разница в том, что обратный ответ может указывать успешный обратный ответ или ответ на неудавшийся запрос. Как показано на рисунке ниже, добавляется ответ на ошибочный запрос, что полностью соответствует. потребности фактического документа интерфейса.
Таким образом, Кодер Файги был разработан с четырьмя дополнениями, удалениями, модификациями и проверками интерфейса.,Начальными состояниями четырех интерфейсов являются все состояния в режиме даразвиват.
После проектирования интерфейса Кодер Файги Просто позвони Сяо Чжан и Сяомэй встретились, чтобы обсудить интерфейсный документ. Очень плавный дизайн интерфейса документов, на данный момент без проблем. Далее: Кодер На данный момент Файги вступил в стадию перемещения кирпичей (реализации интерфейса), Сяо Чжан вошел в ссылку Фронтенд-разработка (ИнтерфейсныеMock), а Сяомэй вошел в ссылку написания тест-кейсов.
Друзья, зайдите в документ интерфейса, созданный Kangkang с помощью Apifox! Кому не нравится эта простая и элегантная страница?
Для сравнения давайте рассмотрим страницу документации интерфейса Swagger! Без сравнения действительно нет вреда, и чванливость вмиг перестанет хорошо пахнуть.
Кодер Файги: В интерфейсе все продумано,Следующий Сразуда Напишите код для реализацииинтерфейс Понятно。Apifox为我们интимныйизпоставлять Понятно Создать кодиз Функция,Я должен сказать, что это потрясающе! ! ! ! Мы не создаем код,Мы всего лишь портеры кода! ! !
Вот пример добавления нового интерфейса участника! ! выбрано Новый интерфейс участника---> Нажмите Создать код--->выбрано Создать бизнес-код
Здесь вы можете генерировать разные бизнес-коды в зависимости от языка и структуры, используемых в вашем текущем проекте. Конечно, вы также можете настроить шаблон. Одно слово — круто, два слова — отлично.
Сяо Чжан: Следующая моя очередь Чжан показал это, давайте посмотрим, как я могу использовать функцию Mock Apifox по-новому. Когда Кодер Файгивозвращатьсясуществовать Пу Чи Пу Чи написатьинтерфейспри кодировании,Я также могу заниматься разработкой одновременно. Хотя интерфейс в настоящее время все еще находится в стадии разработки.,Дая могу использоватьMockФункцияах。
Это можно найти в документации интерфейса для каждого интерфейса. Местный макет иОблачный макет,Нам не нужно создавать какой-либо Mock-сервис, чтобы его использовать.,для разныхинтерфейсответApifoxТакже предоставлено Разные макеты входов.
первый,давайте сделаемвзгляниУспех (200) изMockпросить,НажмитеБыстрый запросПрямо сейчас Может跳转到Быстрый запрос。Нажмитеотправлять , Apifox может напрямую предоставить нам результат ответа для Mock. Макетные поля, такие как имя пользователя и день рождения, относительно реалистичны. Это связано с тем, что Apifox уже определил правила Mock для этих общих полей.
Однако ложка дегтя в том, что поля кода и сообщения дают мне Mock, меня не особо устраивает,У нас здесь соглашениеизуспехответcodeЗначение200,msgиз ЗначениеЗапрос успешен。так,Нам нужно изменить правила Mock для этих двух полей. Для поля кода,Из-за его целочисленного типа,так Можеткдобавить в@integer( min, max) указать егоminиmaxВседа200Прямо сейчас Может,Прямо сейчас@integer(200,200),И потому чтоmsgда Строки необходимо заполнять только напрямую.Запрос успешен Вот и все.подробныйизMockправило Можеткпосмотри сюда--->Mock грамматика
Модифицированный результат Mock соответствует нашим ожиданиям.
Я, Сяо Чжан, занят написанием кода,Дополнительные способы использования Mock,Это еще предстоит узнать читателям и друзьям.,Не хочу обнаруживатьиз Друзья, пожалуйста, в следующий раз послушайте мой разбор.。Скинь ссылку сначалаКак удовлетворить все фантазии фронтендиста по поводу MockЯ делю трижды пять на два Сразу Напишите главную страницу Понятно,Затем,Скопируйте код запроса интерфейса, чтобы выполнить задачу разработки.
Сяомэй: Наконец-то моя очередь Сяомэй,Пришло время мне продемонстрировать свои навыки,Организация тестового примера。возвращатьсядакНовый интерфейс участникаНапример。первый安排一个успехиз Варианты использования,После корректных параметров запроса данных,Нажмитеотправлять,Затем,НажмитеСохранить как вариант использованиякнопка。
Сохранить еще один Отсутствует параметр варианты использования.
После того, как оба варианта использования упорядочены, вы можете увидеть
После написания тестовых случаев,Тогда пришло время автоматизировать тестирование,Создайте новый тестовый пример, как показано ниже.
После добавления тестового примера,Нажмите входит в этот тестовый пример. Затем,Добавить шаги-->выбирать Импорт из [Сценарий использования интерфейса], здесь можно указать, что количество потоков равно 10. и количество петель 2.
Результат после запуска:
Функция отладки интерфейса предоставляется читателям и друзьям! ! ! Есть подарки за оставление сообщений.
Кодер Под командой Файги Кодер Файги,Сяо Чжан и Сяомэй впервые применили Apifox в реальной работе и добились хороших результатов. Весь процесс совместной работы API в Apifox является замкнутым. Им больше не нужно повторно входить в один и тот же интерфейс, и Сяо Чжани Кодер Когда Файги выполняет совместную отладку, вам не нужно беспокоиться о сбое совместной отладки из-за неправильных форматов параметров. Если Фей Ге меняет параметры в интерфейсе, вам не нужно снова и снова сообщать Сяо. Чжани Сяомэй Понятно。В целом впечатления были очень хорошими。конечно,Функции Apifox гораздо шире, чем перечисленные в этой статье.,Читателям предстоит открыть для себя еще больше функций.