目的
在做任何开发前必须做设计工作,在测试开发设计过程中请谨记重要的设计原则---分层设计。可以理解类似MVC的分层思想,主要核心还是来自于高内聚、低耦合的设计思想。虽然身为测试开发但是和开发本质是一样的,只不过服务对象为测试系统&产品&测试研发效能,领域处于测试域。设计的思路依从自上而下,从最上层调用开始设计下层模块、接口设计。 依赖分层原则的架构适合任何形式的自动化测试。目的就是要得到一个可扩展、易维护、易理解的测试架构或代码
分层结构如下:
分层结构
1.1.分层说明
1.1.1.基础层
单元测试框架
unittest,针对各自需要可对unittest做继承、扩展
自动化工具
WEB-UI,selenium。必须对其进行二次封装,增强易用性、稳定性
QT-UI,Tdriver。必须对其进行二次封装,增强易用性、稳定性
WEB-API,Requests。可择其选择必对其进行二次封装
1.1.2.公共层
配置
公共配置(配置文件+配置枚举类)
项目&产品信息:名称、版本、描述...
业务配置:数据库信息--数据库名称、HOST、PORT、用户名、密码...
运行配置:重试次数、忽略的tag、报告的配置信息...
API配置:协议、接口地址、接口描述、接口依赖、接口验证信息等
UI-PAGE配置:UI的Page配置可统一在这儿配置也可在业务资源中
工具类
通用工具类:文件操作、字符串操作、序列化等
异常类
封装的业务异常信息
可以调用配置好的异常描述信息(后期会统一异常处理模块:使用错误码:描述信息:参数信息)
报告类
目前使用HtmlTestRunner,不要修改源码开发。后续会使用新的报告模块开发
必须包含的字段:Case名称、描述、输入信息、输出信息、执行结果,以及其他扩展字段
执行类
定义用例的执行策略
测试套执行
指定用例执行
按照Flag执行
命令行支持