Lien Lunaire
Présentation de la plateforme
Plateforme de tests d'automatisation d'interface basée sur HttpRunner + Django + Vue + Element UI, disponible en production.
Merci aussi beaucoup pour le chou-fleur. Sans AnotherFasterRunner, il n'y aurait pas de LunarLink :)
pile technologique
Module fonctionnel
- Connexion : authentification du compte, gestion des utilisateurs, gestion des autorisations
- Gestion de projet : ajouter de nouveaux projets, afficher la liste et les opérations associées, prendre en charge le tableau de bord du projet, afficher les données du projet dans différentes dimensions sur une base quotidienne, hebdomadaire et mensuelle.
- Aperçu du projet : informations de base sur le projet, API, cas de test, aperçu de l'exécution des tâches, détails quotidiens
- Gestion de l'interface : Une API correspond à une interface HTTP sur le back-end. L'API peut être exécutée seule ou comme étape de cas d'utilisation. Elle prend en charge le regroupement d'API, l'extraction de paramètres, l'assertion de données, la référence de variable, les fonctions de hook avant et arrière, le débogage d'interface. et affichage du journal.
- Importation d'interface : prend en charge YApi synchronisé (en utilisant YApi comme support pour prendre en charge indirectement Swagger, Postman et Har), pas besoin d'entrer manuellement dans l'interface
- Cas de test : prend en charge la gestion des groupes, composés de plusieurs API, prend en charge le transfert dynamique des paramètres des interfaces associées, ne fait pas de distinction entre les cas d'utilisation de scénarios et les cas d'utilisation d'une seule interface, prend en charge l'exécution par lots synchrone et asynchrone et génère des rapports de test.
- Enregistrement du trafic : afin de s'adapter au scénario de test d'interface de processus complexes, ouvrez le navigateur et effectuez une série d'opérations pour obtenir un scénario de test. Les paramètres entre les différentes interfaces sont automatiquement extraits et associés.
- Gestion de la configuration : personnalisez les adresses base_url de requête avec différentes configurations, les paramètres d'en-tête de requête publique, les variables locales, les fonctions de pré- et post-hook, ainsi que les API et les cas d'utilisation paramétrés peuvent être exécutés dans différentes configurations.
- Variables globales : définir des variables pour l'utilisation de l'API. Les valeurs des variables peuvent également faire référence à des fonctions dans le code du pilote. Les comptes généraux et les clés peuvent être définis ici.
- Code du pilote : prend en charge les scripts Python, définissant les fonctions de hook avant et arrière et les fonctions auxiliaires pour implémenter facilement des fonctions telles que la signature des paramètres de requête, le cryptage et le décryptage des réponses, etc.
- Tâches planifiées : les tâches planifiées peuvent être configurées, suivre les expressions crontab et peuvent être activées et désactivées en ligne. L'exécution des cas d'utilisation prend en charge l'exécution en série et en parallèle. Une fois terminé, le rapport de test est transmis à l'entreprise WeChat.
- Rapports historiques : enregistrez différents types de rapports de test tels que la synchronisation, le débogage, asynchrone, etc., qui peuvent être consultés, filtrés, supprimés en ligne et les rapports de test d'autres personnes peuvent également être consultés
Préparation
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
Front-end ♝
Il est recommandé d'utiliser fil. Le projet fournit yarn.lock
. L'utilisation d'autres gestionnaires de packages est sujette à des problèmes de dépendance de version.
# 克隆项目
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
extrémité arrière?
# 克隆项目
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
Visiter le projet
# 登录管理后台,设置账号姓名
http://127.0.0.1:8000/admin/
# 浏览器打开
http://127.0.0.1:8888
用户/密码:管理员用户/密码
# 接口文档地址
http://127.0.0.1:8000/swagger/
Activer les tâches planifiées/asynchrones
# 启动celery,在控制台执行
celery -A backend worker -B --loglevel=info
Photo de démonstration✅
Construction Docker
Veuillez vous référer à la documentation Docker build