Files
Yb-QaAutomationHub/tests/config/test_config.yaml
T
xst 7b4a54f1ce feat: 框架增加登录态复用机制,绕过图形验证码
Web 端 (storage_state):
- 新增 tests/web/save_auth.py: 手动登录后保存 cookies+localStorage
- conftest.py: skip_login:true 时自动加载 storage_state,跳过 UI 登录
- ensure_login fixture: 登录态有效则直接通过,过期则给出明确指引

App 端 (noReset):
- conftest.py: ensure_logged_in fixture,手动登录后无需重新登录
- noReset=true 持久化登录态,未登录自动检测并给出明确引导

配置文件:
- web.skip_login: true + storage_state_dir
- app.skip_login: true + 手动登录说明
2026-07-15 10:47:34 +08:00

84 lines
2.6 KiB
YAML

# 运八网络货运平台 — 测试环境配置
# 数据来源: knowledge_base/00_project/project_profile.md
# 使用方式: from config.test_config import load_config
# ── Web 管理端 ──
web:
base_url: "https://ybxcx.ynyun8.com:8000/admin"
api_base_url: "https://ybxcx.ynyun8.com:8000/"
timeout_seconds: 120
screenshot_on_failure: true
screenshot_on_step: false
browsers:
- chromium
- firefox
# WebKit 默认关闭(Windows 下问题较多),CI 环境可开启
viewport:
width: 1920
height: 1080
# 登录态复用(跳过图形验证码)
# storage_state 文件保存了浏览器登录后的 cookies + localStorage
# 首次使用需手动登录一次生成,流程:
# 1. 运行: python tests/web/save_auth.py
# 2. 脚本打开浏览器 → 人工完成验证码登录 → 登录态自动保存
# 3. 后续执行用例时自动复用,无需重复登录
#
# skip_login: true → 加载已有的 storage_state,跳过登录步骤
# skip_login: false → 每次用例都通过 UI 执行完整登录流程
skip_login: true
storage_state_dir: "tests/web/auth" # 登录态存储目录
# ── App 移动端 ──
app:
appium_host: "http://localhost:4723"
timeout_seconds: 120
screenshot_on_failure: true
platforms:
- android
# - ios # iOS 仅在 macOS CI 环境下开启
# 登录态复用(跳过图形验证码)
# Appium noReset=true 已确保 app 数据不重置,登录态持久保留
# 使用方式:手动启动 app 登录一次 → 后续用例自动跳过登录
#
# skip_login: true → 用例直接检查首页是否已登录态,跳过登录步骤
# skip_login: false → 每次用例都执行完整 UI 登录流程
skip_login: true
android:
device_name: "Android Emulator"
app_package: "com.yunba.driver" # ⚠️ 请确认实际包名
app_activity: ".MainActivity" # ⚠️ 请确认实际启动 Activity
no_reset: true
new_command_timeout: 120
ios:
device_name: "iPhone 15"
bundle_id: "com.yunba.driver" # ⚠️ 请确认实际 Bundle ID
no_reset: true
new_command_timeout: 120
# ── 测试账号 ──
accounts:
super_admin:
phone: "super_admin"
password: "951260684NiAn.." # ⚠️ 若密码变更请同步修改
role: "平台运营人员"
team_leader:
phone: "13113113113"
password: "88888888"
role: "车队长"
driver:
phone: "15188888888"
password: "88888888"
role: "司机"
# ── 报告 ──
report:
logs_dir: "output/logs"
screenshots_dir: "output/screenshots"
junit_xml: "output/reports/junit.xml"