在项目上使用自动化测试,是为了跑主流程的回归测试,提高测试效率,在每个测试版本中把主要的精力放在发版内容新增的需求中;
根据项目的功能模块,把业务主流程和使用频率高的功能抽取出来进行自动化测试,作为发版前的主流程回归测试辅助作用;
大致的流程是:
1、先做po设计,把最原始的脚本重构封装并参数化,初步设想,base层,element定位层,handle层,business层,最后是testcase层;
base层,用于传入browser(浏览器的选择,便于以后扩展兼容性测试)和driver的基本方法(findElement,url的获取,frame的切换,窗口放大);
element定位层,用于各业务page中元素的获取封装、By元素定位方式的封装、从配置文件根据key-value的形式读取元素定位方式和定位值的封装;
handle操作层,用于根据页面模块page中的元素的操作封装;
business业务层,用于业务逻辑操作;
testcase层,用于组装case,输入测试数据和断言判断;
2、建成maven工程,调用第三方的jar优化,实现日志收集,TestNG的使用,测试报告的生成以及jenkins的配置;
下面每层贴部分的典型代码展示:
配置文件内容:
浏览器选择:
driver基本方法重新封装:
读取配置文件内容,By封装
element定位层:
handle操作层:
business业务操作层:
testcase层: