ЛунарЛинк
Введение в платформу
Платформа для тестирования автоматизации интерфейса на основе HttpRunner + Django + Vue + Element UI, доступная для производства.
И еще большое спасибо цветной капусте. Без AnotherFasterRunner не было бы LunarLink :)
стек технологий
Функциональный модуль
- Вход: аутентификация учетной записи, управление пользователями, управление разрешениями.
- Управление проектами: добавление новых проектов, отображение списков и связанных с ними операций, поддержка информационной панели проекта, отображение данных проекта в различных измерениях ежедневно, еженедельно и ежемесячно.
- Обзор проекта: основная информация о проекте, API, тестовые примеры, обзор выполнения задач, ежедневные подробности.
- Управление интерфейсом: API соответствует интерфейсу HTTP на серверной стороне. API можно запускать отдельно или в качестве этапа использования. Он поддерживает группировку API, извлечение параметров, утверждение данных, ссылку на переменные, функции переднего и заднего перехвата, отладку интерфейса. и отображение журнала.
- Импорт интерфейса: поддерживает синхронизированный YApi (используя YApi в качестве средства для косвенной поддержки Swagger, Postman и Har), нет необходимости вручную вводить интерфейс.
- Тестовые сценарии: поддержка управления группами, состоящей из нескольких API, поддержка динамической передачи параметров связанных интерфейсов, отсутствие различия между сценариями использования и вариантами использования одного интерфейса, поддержка синхронного и асинхронного пакетного выполнения и создание отчетов о тестировании.
- Запись трафика. Чтобы адаптироваться к сценарию тестирования интерфейса сложных процессов, откройте браузер и выполните ряд операций, чтобы получить тестовый пример. Параметры между различными интерфейсами автоматически извлекаются и связываются.
- Управление конфигурацией: настройте адреса base_url запроса с различными конфигурациями, параметрами общедоступного заголовка запроса, локальными переменными, функциями до и после перехвата, а также параметризованными API-интерфейсами и вариантами использования, которые могут выполняться в различных конфигурациях.
- Глобальные переменные: определите переменные для использования API. Значения переменных также могут относиться к функциям в коде драйвера. Здесь можно определить общие учетные записи и ключи.
- Код драйвера: поддерживает сценарии Python, определяющие функции переднего и заднего перехвата, а также вспомогательные функции для простой реализации таких функций, как подпись параметров запроса, шифрование и расшифровка ответов и т. д.
- Запланированные задачи. Запланированные задачи можно настроить, использовать выражения crontab, а также включать и выключать в режиме онлайн. Выполнение вариантов использования поддерживает последовательное и параллельное выполнение. После завершения отчет о тестировании передается в корпоративный WeChat.
- Исторические отчеты: сохраняйте различные типы отчетов об испытаниях, такие как время, отладка, асинхронные и т. д., которые можно просматривать, фильтровать, удалять в Интернете, а также можно просматривать отчеты об испытаниях других людей.
Подготовка
Python >= 3.9.5 (推荐3.9.x版本)
nodejs >= 16.0 (推荐最新)
Mysql >= 5.7.0 (推荐5.7.x版本)
RabbitMQ >= 3.x-management(默认需要,推荐最新版)
Redis >= 6.2.6
Фронтенд ♝
Рекомендуется использовать Yarn. Проект предоставляет yarn.lock
. Использование других менеджеров пакетов может привести к проблемам с зависимостью версий.
# 克隆项目
git clone https://github.com/tahitimoon/LunarLink.git
# 进入项目目录
cd LunarLink/frontend
# 安装依赖
yarn install --registry=https://registry.npmmirror.com
# 启动服务
yarn start
# 浏览器访问 http://127.0.0.1:8888
# config/index.js 文件可配置启动端口等参数
# config/dev.env.js 文件可配置后端接口地址
# config/prod.env.js 文件保持不变
# 构建生产环境
# yarn build
задняя часть?
# 克隆项目
git https://github.com/tahitimoon/LunarLink.git
# 进入项目目录
cd LunarLink/backend
# 将.env.example文件重命名为.env 并配置相关参数
mv .env.example .env
# 安装依赖环境
pip3 install -r requirements.txt
# 执行迁移命令:
python3 manage.py makemigrations
python3 manage.py migrate
# 创建管理员用户
python3 manage.py createsuperuser
# 启动项目
python3 manage.py runserver
# 开启流量录制代理
python3 proxy.py
Посетить проект
# 登录管理后台,设置账号姓名
http://127.0.0.1:8000/admin/
# 浏览器打开
http://127.0.0.1:8888
用户/密码:管理员用户/密码
# 接口文档地址
http://127.0.0.1:8000/swagger/
Включить запланированные/асинхронные задачи
# 启动celery,在控制台执行
celery -A backend worker -B --loglevel=info
Демонстрационная картинка ✅
Докер-сборка
Пожалуйста, обратитесь к документации по сборке Docker.