项目流程
项目结构
xxxx(项目名称)
|-- api
| -- xxxxxxx # 某产品(或某服务)
| -- xxxx.py # 该产品某一接口
|-- common # 相同基础通用方法
| -- dataType.py # 字符格式转换,同一封装使用
| -- emailSend.py # 测试执行后的邮件发送配置(收件人配置)
| -- HTMLTestRunner.py # unittest测试执行生成测试报告的报告文件
| -- logger.py # log输出配置
| -- readConfig.py # 读取环境变量
| -- runMain.py # 接口请求整体封装
|-- config
| -- env.py # 环境变量
|-- data
| -- data_create # 测试数据生成
| -- xx_data_create # 某产品线测试数据生成
| -- mysql # 数据库数据操作
|-- docs # 项目说明与相关文档
|-- logs # 生成的log文件存储位置
|-- reports # 生成的测试报告存储位置
|-- suitess
| -- xxxxxxx # 某产品(或某服务)
| --suite_xxxx.py # 该产品通用封装的模块
|-- testcases
| -- func_xxxxxxx # 某产品线功能逻辑测试用例
| -- api_xxxxxxx # 某产品api测试用例
| -- smokec_xxxxxxx # 某产品冒烟测试用例
| -- test_xxx.py # 测试用例文件
|-- run_case.py # 通过参数执行任一测试用例或测试用例集
|-- requirements.txt # 该文件记录所有需要用的框架(以便更换环境一键安装)
项目要求与相应操作
文件命名
- 对于api文件,命名api_xx.py
- 对于模块文件,命名suite_xx.py
- 对于测试用例文件,命名test_xx.py
测试用例函数命名
- 测试用例函数命名统一使用 test_casexx 格式命名
接口参数化
- 接口需要的字段,所有字段均需参数化,便于多样化设计测试用例
- 对于特定的参数,可以考虑写死