Что такое Апифокс?
Что такое Апифокс?

1. Общие решения API имеют множество болевых точек.

1.1. Множество инструментов

Привет всем, я Фей Ге, программист. Как опытный серверный программист, большинство проектов, которые я делаю, обычно основаны на Swagger для управления документами API, Postman для отладки интерфейса и JMeter для тестирования производительности интерфейса. такие инструменты, как данные RAP и Mock API.

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

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

1.2. Есть много проблем.

  1. Несколько систем несовместимы Swagger, Postman, Jmeter и другие системы независимы и не могут взаимодействовать друг с другом, в результате чего создается серверная документация. разработка,Фронтенд-разработка,Тестировщик должен написать это снова,Это привело к большому дублированию работы.
  2. Низкая эффективность Swagger, Postman и Jmeter — иностранное программное обеспечение. Их объединяет одна общая черта — низкая визуализация и недружественная работа.
  3. Невозможно работать в команде Swagger,Postman,Jmeter в основном используется в автономном режиме на одной машине.,Синхронизация в реальном времени между членами команды невозможна.,Невозможно сотрудничать.
  4. Высокие затраты на обучение. Чем больше программного обеспечения вы используете, тем сложнее начать работу новичкам. Это требует больших затрат на обучение и обучение. Попробуйте поиграть с различными пакетами Swagger, Postman и Jmeter, чтобы узнать об этом.
  5. данные Согласованность Сложность Каждое изменение требует ручной модификации нескольких систем, что очень затрудняет поддержание согласованности. Например: серверная разработка добавляет поле в определенный интерфейс, затем ему сначала нужно добавить поле в Swagger Поддерживать интерфейс,Затем измените интерфейс Postman, затем сообщите Фронтенд-разработка;,Затем «Фронтенд-разработка» наконец-то модифицирует Mock интерфейса на Mock.js, — рассказывает Девушка-испытатель;,Девушка-испытатель, а затем доработать интерфейс на Jmeter. Прошло много времени,Несоответствия становятся все хуже,В конечном итоге неподдерживаемый.

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

Пока однажды я случайно не узнал об Apifox, инструменте тестирования API на CSDN. Это открыло мне глаза на новую возможность, возможность, которая позволяет интерфейсной и серверной части совместно отлаживать интерфейс без необходимости работать сверхурочно, и возможность, которая позволяет тестировщику не работать так усердно, чтобы повысить производительность. тестирование на Jmeter.

2. Знакомство с Апифоксом

ApifoxКакие инструменты!Откроем официальный сайт Apifox Официальное представление Канкана.

Apifox — это интегрированная платформа для совместной работы по документации API, отладке API, API Mock и автоматическому тестированию API, позиционирующая Postman + Swagger + Mock + JMeter. С помощью одной системы и одних данных мы можем решить проблему синхронизации данных между несколькими системами. Пока документ API определен, отладку API, имитацию данных API и автоматическое тестирование API можно использовать напрямую, не определяя его повторно; документацию API, а также разработку и отладку API можно использовать один и тот же инструмент. После завершения отладки API это можно сделать. гарантированно будет полностью соответствовать определению документа API. Оперативно, своевременно и точно!

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

Судя по официальному представлению, Apifox в основном предоставляет нам четыре основные функции:

  1. Дизайн интерфейса Дизайн интерфейса Прямо сейчас Определить спецификации документа интерфейс (например, путь к интерфейсу, параметры, возвращаемое значение, структура данных и т. д.). серверная разработкасуществовать ApifoxВведите вышеинтерфейспосле информации,Apifox автоматически сгенерирует интерфейсные документы.,Сгенерированный документ могут просмотреть все члены команды.,конечно,Документами также можно поделиться со сторонними командами.
  2. После определения документа интерфейсаотладить интерфейс,Вот и все Нажмитебегатьруководитьинтерфейсотлаживать Понятно。Postmanфункции на,Все доступно на Apifox,В то же время Apifox также добавил свои специальные функции.,Например: функция сохранения вариантов использования,Интерфейс может определять несколько вариантов использования.
  3. интерфейс Автоматическое тестирование В Apifox вы можете напрямую выполнять автоматическое тестирование или экспортировать тестовые примеры и наборы тестов в формат JMeter, а затем импортировать их. JMeter Проведите тестирование производительности.
  4. интерфейсданныеMock встроенный Mock.js Механизм правил, очень удобно mock Доступны различные инструменты, которые могут полностью заменить инструмент RAP.

В дополнение к функциям, представленным выше, Apifox также предоставляет готовые функции, такие как непрерывная интеграция CI, операции с базами данных, автоматическая генерация кода, импорт/экспорт данных, совместная работа в команде и многое другое.

Прежде чем перейти к следующему шагу,Вы можете открыть его первым Документация по использованию Apifox взгляни

2.1 Загрузка и установка

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

  1. Область меню:включать Понятноинтерфейсуправлять(Дизайн интерфейса,интерфейсотлаживать Функция,интерфейсMock — здесь (функция автоматического тестирования интерфейса — здесь);,Настройки проекта: установите глобальную информацию о проекте на да,Импортируйте несколько скриптов и так далее.
  2. Боковая панель проекта: включает все модели интерфейса, данных и быстрый запрос в рамках проекта.
  3. Статистика обзора проекта: этот основной интерфейс позволяет вам сразу узнать, сколько интерфейсов имеется в текущем проекте.,Сколько вариантов использования,Сколько документов,Здесь вы можете добавить предварительные операции ко всему проекту.,Послеоперационный и другие операции.

После предварительного понимания Апифокса мы переходим к настоящей боевой фазе. Давайте поговорим о любви с Апифоксом.

3. Приступите к реальному бою

Теперь в команде три члена: по одному для фронтенд-разработки, по одному для серверной разработки и по одному тестировщику. Их ситуация показана в следующей таблице:

Имя

Роль

Кодер Файги

серверная разработка

Сяо Чжан

Фронтенд-разработка

Сяомэй

Девушка-испытатель

Сейчас Кодер Файги,Сяо Чжан,Сяомэй каждый установил Apifox на свои компьютеры,Зарегистрируйтесь и войдите в свой клиент Apifox.

Требование проекта — разработать проект управления членством. На этот раз мы собираемся использовать Apifox для совместной разработки и тестирования API.

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

серверная разработка Кодер После того, как Файги создаст команду и проект, ставьте Фронтенд-разработку Сяо. В этот проект были привлечены Чжан и Девушка-испытатель Сяомэй:

  1. После того, как Фей Гэ разработал документ интерфейса, Сяо Чжан может создавать интерфейсные файлы прямо на этом наборе интерфейсныхMock.,Сяомэй может писать тестовые примеры прямо на этом интерфейсе.
  2. После того, как Фэй Гэ завершил разработку интерфейса, Сяо Чжан может напрямую переключаться с адреса Mockинтерфейса на реальный адрес интерфейса для совместной отладки.,
  3. После того, как Фэй Гэ и Сяо Чжан завершили совместную настройку,Сяомэй может писать варианты использования интерфейса,Проведите автоматизированное тестирование.

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

3.1. Создайте команду (сделал Фей Ге, программист)

Кодер Файги: Создайте команду, назовем ее: Кодер Файгикоманда,Шаги по созданию командыда:Пример проекта--->Создать новую команду--->Введите название команды--->Нажмитедержать

3.2. Создайте проект (сделал Фей Ге, программист)

В Apifox в первую очередь есть команды и проекты. Таким образом, после создания команды вы можете создать новый проект прямо в команде.,просто позвони:Система управления участниками Проект。Создание шаговда:Командный проект---->Новый проект--->Введите название проекта--->держать

3.3. Пригласить членов команды (кодировщик Фэй Гэцян)

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

После того, как Сяомэй зайдет в Apifox,Нажмите кнопку «Обновить», чтобы получить приглашение Кодер Файги в окне сообщения.,Нажмите может присоединиться к команде после того, как примете ее.

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

3.4 Дизайн интерфейса (сделал программист Фей Ге)

Кодер После того, как команда Файги и проект будут созданы, Файги разработает документ интерфейса, который отличается от Postman: дизайн интерфейса и проектирование интерфейса в Apifox — это две разные концепции. Целью проектирования интерфейса здесь является да. Определить спецификации документа интерфейса。Просто сделайте следующее Прямо сейчас Может

需要注意издаинтерфейсадрес:интерфейс Путь начинается с/начинать,HTTPЧасть соглашенияи Требуется часть доменного имени.существоватьсредаизURL-адрес префиксанастройки в,Обычно простода:http://ip-адрес:номер порта/название проекта

3.4.1. Введите основную информацию.

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

3.4.2. Введите входные и выходные параметры.

Параметры запроса очень похожи на почтальон, все они основаны на разных типах контента. Установить другой параметр,здесь яНовый интерфейс участниказапроспараметр Форматда:application/json。Apifoxинтимныйиз Увеличивать ПонятноИнтеллектуальное распознавание JSON/XML/быстрый импортиз Функция,Вам нужно всего лишь вставить образец строки json запроса, чтобы извлечь соответствующие поля.,Если полей много,Это избавит вас от необходимости вводить каждый из них вручную.,Это действительно приятно.

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

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

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

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

Друзья, зайдите в документ интерфейса, созданный Kangkang с помощью Apifox! Кому не нравится эта простая и элегантная страница?

Для сравнения давайте рассмотрим страницу документации интерфейса Swagger! Без сравнения действительно нет вреда, и чванливость вмиг перестанет хорошо пахнуть.

3.5 Метод CV (генерация кода)

Кодер Файги: В интерфейсе все продумано,Следующий Сразуда Напишите код для реализацииинтерфейс Понятно。Apifox为我们интимныйизпоставлять Понятно Создать кодиз Функция,Я должен сказать, что это потрясающе! ! ! ! Мы не создаем код,Мы всего лишь портеры кода! ! !

Вот пример добавления нового интерфейса участника! ! выбрано Новый интерфейс участника---> Нажмите Создать код--->выбрано Создать бизнес-код

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

3.6. Данные интерфейса Mock (Сяо Чжанцянь)

Сяо Чжан: Следующая моя очередь Чжан показал это, давайте посмотрим, как я могу использовать функцию 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Я делю трижды пять на два Сразу Напишите главную страницу Понятно,Затем,Скопируйте код запроса интерфейса, чтобы выполнить задачу разработки.

3.7. Написание тестовых примеров (Сяо Мэйцянь).

Сяомэй: Наконец-то моя очередь Сяомэй,Пришло время мне продемонстрировать свои навыки,Организация тестового примера。возвращатьсядакНовый интерфейс участникаНапример。первый安排一个успехиз Варианты использования,После корректных параметров запроса данных,Нажмитеотправлять,Затем,НажмитеСохранить как вариант использованиякнопка。

Сохранить еще один Отсутствует параметр варианты использования.

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

3.8. Автоматизированное тестирование (Сяо Мэйган).

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

После добавления тестового примера,Нажмите входит в этот тестовый пример. Затем,Добавить шаги-->выбирать Импорт из [Сценарий использования интерфейса], здесь можно указать, что количество потоков равно 10. и количество петель 2.

Результат после запуска:

3.9 Отладка интерфейса

Функция отладки интерфейса предоставляется читателям и друзьям! ! ! Есть подарки за оставление сообщений.

Подвести итог

Кодер Под командой Файги Кодер Файги,Сяо Чжан и Сяомэй впервые применили Apifox в реальной работе и добились хороших результатов. Весь процесс совместной работы API в Apifox является замкнутым. Им больше не нужно повторно входить в один и тот же интерфейс, и Сяо Чжани Кодер Когда Файги выполняет совместную отладку, вам не нужно беспокоиться о сбое совместной отладки из-за неправильных форматов параметров. Если Фей Ге меняет параметры в интерфейсе, вам не нужно снова и снова сообщать Сяо. Чжани Сяомэй Понятно。В целом впечатления были очень хорошими。конечно,Функции Apifox гораздо шире, чем перечисленные в этой статье.,Читателям предстоит открыть для себя еще больше функций.

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