大家好,首先声明我是小白,大佬勿喷
这是一个web ui自动化脚手架项目
基于selenium+pom+pytest
basePage中包含selenium底层方法的二次封装写的不多剩下的空间留给你们
businessPage中存放页面元素以及页面业务流程
common中包含清理文件,发送邮件,随机测试数据生成,读取表格,方法定时器等等常用的方法,大家可以自行补充
config中包含邮箱地址,测试环境配置,浏览器配置以及测试前后置夹具等等
data中用来存放测试数据也可以将页面层定位表达式封装进来,自行发挥
downloadChromeDriver是用来管理chrome驱动的,可以自动获取chrome版本与驱动版本并检验是否一致,如果不一致
会自动帮你下载对应的驱动并且返回一个driver对象,这就避免了chrome更新每次手动下载驱动而且还要把驱动
放到python目录中,我会在这个目录下完成一整套操作并且返回一个driver对象将driver对象传到基础层中.
env是项目中环境变量的配置以及写入环境变量的方法
testCases这个不用我多说用例存放层
还有一些小细节大家就自由飞翔吧
丰富的创造空间留给你们

最后说一下做这套脚手架的初心,有好多正在做功能或者已经步入自动化领域的小伙伴经常问我自动化要学什么,
我想说的是首先保证代码基础的前提下,就是不断的学习,不断的去看大佬的框架
UI自动化最重要的就是解耦,用例与用例分离,数据与数据分离,避免牵一发而动全身
我想说的就是自动化不光要写框架写脚本,还要思考如何融入到devops,如何通过CI/CD实现测试的左右移
比如如何在开发的git仓库中埋下属于我们测试的钩子,
开发合并代码后结合pipeline持续部署测试环境,部署完成后触发你的整套框架体系
左移后我们还要思考如何将测试右移至现场生产和客户
而自动化在整套体系中可以完全把你解放出来,从拉取代码持续部署到自动化测试到报告生成与发送
这样我们就有更多的时间去思考更多的事
最后想跟所有人说,自动化测试只是减少手工测试,但是永远代替不了手工测试
当你熟悉透项目,比如全量测试,主流程测试,回归测试各占你一个版本大概多长的测试时常,分别在第几轮完成
然后再思考要拿哪些功能去完成自动化

最后祝大家天天都有好心情.





