您的位置:首页 > 其它

Selenium的POM和PAGEFACTORY的理解

2017-10-17 10:26 381 查看
对于selenium的理解,主要集中在POM和PAGEFACTORY上,这两个理解清楚了,核心就理解清楚了,CSDN上有一篇文章写的很好很清楚,我转载过来,直接可以读它:
http://blog.csdn.net/kittyboy0001/article/details/25219053
摘录一段比较重要的话:

在BaiduSearchPage baiduPage = PageFactory.initElements (driver,BaiduSearchPage.class); 这行代码。PageFactory负责初始化了Page里的元素,amazing,用起来就是这么的优雅。
那么下来,我就要问了:PageFactory是怎么定位元素的呢?

原来PageFactory初始化元素有一个惯例,样例中将WebElement的名称定为wd,那么PageFactory将按类似以下的形式对其进行初始化:

driver.findElement(By.id("wd"));

PageFactory认为wd是HTML元素的id或者name字段的值,并且优先从id开始查找。至此,我们终于知道怎么回事了。
这段话看起来很好理解,但是在页面跳转的时候就容易出现问题,当页面跳转到另一个页面时,需要再调用
PageFactory.initElements

去初始化页面,这是容易忽视的地方,以为driver传进去以后就不用再调用了。

其他的就不再赘述了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息