文章目录
1.任务目标
我们到了这一小结,我们学习一下,封装以前学过的代码,我们学习一下自动化常用的设计模式PageObject设计模式,为什么要学习po设计模式那,因为我们再写项目时候创建的文件夹,我们查看起来很麻烦,我们现在要学习一下如何封装,这一小节了解一下po
2.了解PageObject模式
POM(Page Object Model) 即是页面对象模型
(1)page Object是Selenium自动化测试项目开发实践的最佳设计模式之一,主要是将每一个页面设计为一个Class,其中包含页面中需要测试的元素,这样在Selenium测试页面中可以通过调用页面类来获取页面元素,这样巧妙的避免了当页面元素id或者位置变化时,需要改测试页面代码的情况。
当页面元素id变化时,只需要更改测试页Class中页面的属性即可。 获取页面中元素的属性可以通过id,class或者XPath获取,在id唯一的情况下,可以使用id获取页面元素,否则可以使用XPath定位页面元素。
(2)PageObject原理:将页面元素定位和对元素的操作行为封装成一个page类,实现对页面对象和测试用例的分离。
一条测试用例可能需要多个步骤操作元素,将每个步骤单独的封装成一个方法,在执行测试用例的时候调用封装好的操作。
3.PageObject模式的优点:
(1)当某一个页面的元素发生变化,只需要修改该页面对象中的代码即可,不需要重复不断的修改测试用例。
(2)提高代码重用性,结构更加清晰,维护代码更容易。
(3)测试用例发生变化时,只需要修改少数页面对象即可。
4.PO模式架构图
5.小结
我们运用po设计模式可以让自己的项目逻辑很清晰,一个合格的项目他的逻辑设计很重要,po设计模式比较难理解,大家再下面一定多练。