Selenium的POM和PAGEFACTORY的理解

来源:互联网 发布:iphone flac 播放软件 编辑:程序博客网 时间:2024/05/19 13:44

对于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传进去以后就不用再调用了。


其他的就不再赘述了。