以py自动化为例:主要分为接口自动化和UI自动化
接口:主要围绕分层思想进行的封装,主要包括 api、testcases、common、configs、data、logs、report、conftest.py 等等
api:单接口定义封装
testcases: 通过调用单接口来组装测试用例
commons:requests 库请求的封装、数据库操作、excel 操作、yaml 文件操作、加解密
封装、日志封装、正则处理、随机数据生成
configs:数据库配置、各个服务对应的域名等等
data: 数据驱动--接口测试用例数据
Logs: 日志文件
Report:测试报告
conftest.py: 自定义 fixture、pytest 自带的钩子函数
UI :围绕 POM(page object module)模式,主要包括 common、data、logs、video、report、conftest.py、pagefiles、pages、actions、testcases
common:基础操作封装、设备自动获取、appium server 自动启动、excel 操作、yaml
文件操作、日志封装、随机数据生成
data: 数据驱动数据文件
logs: 日志文件
video:临时存储执行回放动态图
report: 测试报告
conftest.py:全局性 driver 初始化、失败截图、动态图生成、pytest 动态参数
pagefiles: 元素信息管理文件
pages:各个页面的元素操作
actions:通过组装 page 层操作来完成业务封装
testcases:组装 actions 层业务实现测试