前言
本文介绍自动化测试在 Web 端修改客户端配置及验证生效的具体实现方案。
一、测试环境
- 代码编辑器:Pycharm,编程语言:Python
- Web 自动化测试工具:Playwright
- 客户端测试工具:Appium
- 项目架构:Web 端 + App 端
- 测试用例管理:Pytest
- 版本信息:
- Python: 3.11
- Playwright: 1.57.0
- Pytest: 8.3.3
- Selenium: 4.33
- appium-python-client: 5.1.1
- Appium Server: v2.18.0
二、项目结构
1. Pycharm 文件脚本目录
- tests:存放测试文件。使用 Pytest 整合用例,文件名以
test_开头(如test_patient_screen.py)。 - setting:存放配置信息(用户名密码、上传文件路径、延时时间等),便于维护与导入。
- pages:基于 PO 模式封装页面操作。将常用界面操作封装为类,方便跨页面调用。
- log:存放日志文件。使用 Python
logging库记录操作步骤和错误信息。
2. 关键对象与 Fixture
Browser
规划生成器生命周期范围。
import pytest
from playwright.sync_api import sync_playwright, Browser
@pytest.fixture(scope="session")
def browser() -> Browser:
playwright = sync_playwright().start()
browser = playwright.chromium.launch(headless=False, slow_mo=30000)
yield browser
browser.close()
playwright.stop()
Page
Page 生成器生命周期设为 class,确保同一测试类中 Page 状态延续(如登录后后续用例无需重复登录)。
from playwright.sync_api import Page
@pytest.fixture(scope="class")
def page(browser: Browser) -> Page:
context = browser.new_context()
page = context.new_page()
page
page.close()
context.close()

