LunarLink
Einführung in die Plattform
Plattform für Schnittstellenautomatisierungstests basierend auf HttpRunner + Django + Vue + Element UI, verfügbar für die Produktion.
Vielen Dank auch, Blumenkohl. Ohne AnotherFasterRunner gäbe es kein LunarLink :)
Technologie-Stack
Funktionsmodul
- Anmeldung: Kontoauthentifizierung, Benutzerverwaltung, Berechtigungsverwaltung
- Projektmanagement: Neue Projekte hinzufügen, Listenanzeige und zugehörige Vorgänge anzeigen, Projekt-Dashboard unterstützen, Projektdaten in verschiedenen Dimensionen auf täglicher, wöchentlicher und monatlicher Basis anzeigen
- Projektübersicht: grundlegende Projektinformationen, API, Testfälle, Übersicht über die Aufgabenausführung, tägliche Details
- Schnittstellenverwaltung: Eine API entspricht einer HTTP-Schnittstelle am Backend. Die API kann einzeln oder als Anwendungsfallschritt ausgeführt werden. Sie unterstützt API-Gruppierung, Parameterextraktion, Datenzusicherung, Variablenreferenz, Front- und Rear-Hook-Funktionen sowie Schnittstellen-Debugging , und Protokollanzeige.
- Schnittstellenimport: Unterstützt synchronisiertes YApi (unter Verwendung von YApi als Medium zur indirekten Unterstützung von Swagger, Postman und Har), keine manuelle Eingabe der Schnittstelle erforderlich
- Testfälle: Unterstützen Sie die Gruppenverwaltung, die aus mehreren APIs besteht, unterstützen Sie die dynamische Parameterübertragung zugehöriger Schnittstellen, unterscheiden Sie nicht zwischen Szenario-Anwendungsfällen und Einzelschnittstellen-Anwendungsfällen, unterstützen Sie die synchrone und asynchrone Stapelausführung und generieren Sie Testberichte
- Verkehrsaufzeichnung: Um sich an das Schnittstellentestszenario komplexer Prozesse anzupassen, öffnen Sie den Browser und führen Sie eine Reihe von Vorgängen aus, um einen Testfall zu erhalten. Die Parameter zwischen verschiedenen Schnittstellen werden automatisch extrahiert und zugeordnet.
- Konfigurationsverwaltung: Anpassen von Basis-URL-Adressen für Anfragen mit unterschiedlichen Konfigurationen, öffentlichen Anfrage-Header-Parametern, lokalen Variablen, Pre- und Post-Hook-Funktionen sowie parametrisierten Inhalten und Anwendungsfällen, die in verschiedenen Konfigurationen ausgeführt werden können.
- Globale Variablen: Variablenwerte für die API-Nutzung können sich hier auch auf Funktionen im Treibercode beziehen.
- Treibercode: Unterstützt Python-Skripte und definiert Front- und Rear-Hook-Funktionen sowie Hilfsfunktionen, um Funktionen wie Anforderungsparametersignatur, Ver- und Entschlüsselung von Antworten usw. einfach zu implementieren.
- Geplante Aufgaben: Geplante Aufgaben können eingerichtet werden, folgen Crontab-Ausdrücken und können online ein- und ausgeschaltet werden. Die Anwendungsfallausführung unterstützt die serielle und parallele Ausführung. Nach Abschluss wird der Testbericht an den WeChat des Unternehmens gesendet
- Historische Berichte: Speichern Sie verschiedene Arten von Testberichten wie Timing, Debugging, asynchron usw., die online angezeigt, gefiltert und gelöscht werden können. Außerdem können die Testberichte anderer Personen angezeigt werden
Vorbereitung
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
Frontend ♝
Es wird empfohlen, Yarn zu verwenden. Die Verwendung anderer Paketmanager ist anfällig für Probleme mit der 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
hinteres Ende?
# 克隆项目
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
Projekt besuchen
# 登录管理后台,设置账号姓名
http://127.0.0.1:8000/admin/
# 浏览器打开
http://127.0.0.1:8888
用户/密码:管理员用户/密码
# 接口文档地址
http://127.0.0.1:8000/swagger/
Aktivieren Sie geplante/asynchrone Aufgaben
# 启动celery,在控制台执行
celery -A backend worker -B --loglevel=info
Demobild✅
Docker-Build
Weitere Informationen finden Sie in der Dokumentation zum Docker-Build