如果你和我一样刚刚开始自动化测试,那么很有可能你的代码一开始是和我一样线性的,并且元素的定位信息页会暴露在代码里,十分不美观。如图:
那么我们就需要把代码进行重构封装以及分层。这篇博客先讲两个最重要的方法的封装。
一.先说重构封装
如果没有进行重构封装的话,就和我上图的代码一样,元素定位信息直接暴露在代码上,这样十分的不安全。而且看上去代码十分的复杂和冗余,所以我们很有必要对代码进行重构封装。
众所周知,我们用selenium进行自动化测试所写的脚本里面经常用到的几个方法无外乎是:
1.driver.findElement()
2.By.xpath() / By.className()等等
3.driver.get()等。
今天就来以这几个方法为例讲讲重构封装和分层。
1.以By.xpath()为例
By.xpath()的括号里面存放的是一个字符串。那么我们可以先用properties文件存储一下我们所要用到的元素定位信息。这里就不讲了,不会的参考其他博客。
我们先来定义一个方法by方法,我们知道他返回的肯定是一个By类型。
而且by方法需要两个参数,一个是定位元素的信息,还有一个就是定位元素所用的方法,到底是xpath还是id等等
所以应该这样定义: