python + selenium + unittest + pom模式+ddt数据驱动项目实战(ddt数据驱动篇)
上一篇文章链接: python + selenium + unittest + POM 自动化测试实战记录了将代码封装成POM模式进行自动化测试,但是没有进行数据驱动。
可以看到上一篇文章中course01、course02、course_jmeter,course_oracle的页面封装可以整理成一个页面进行封装,因为在整理需求的时候可以发现,这都是在课程列表页的相同的模块,只是在不同的是在页面的切换。因此我们可以优化代码,使用数据驱动对相同的功能进行参数化。
优化思路:
1、增加切换课程列表页的页码的方法封装方法:
2、将课程详情按钮的定位元素的路径作为参数,对进入课程详情页的方法进行封装;
3、将课程名称的元素路径作为参数,对获取详情页的课程名称的方法进行封装;
4、对测试用例进行优化,增加数据驱动的传入参数(由于断言需要,应该传入参数增加预期结果的课程名称)
5、增加读取excel数据的方法,这边使用xlrd对excel文件进行读取
6、在测试用例类中,对测试用例方法进行传参,使用ddt进行数据驱动
7、最后,我们就可以使用一个excel数据文件对相同的功能的进行数据驱动自动化测试啦