1.什么是Page ObjectModel模式
Page Objects是selenium的一种测试设计模式,主要将每个页面看作是一个class。class的内容主要包括属性和方法,属性不难理解,就是这个页面中的元素对象,比如输入用户名的输入框,输入登陆密码的输入框,登陆按钮,这个页面的url等,而方法,主要是指这个页面可以提供的具体功能。
2.什么是POM
页面对象模型(POM)是一种设计模式,用来管理维护一组web元素集的对象库
在POM下,应用程序的每一个页面都有一个对应的page class
每一个page class维护着该web页的元素集和操作这些元素的方法
page class中的方法命名最好根据其对应的业务场景进行,例如通常登录后我们需要等待几秒中,我们可以这样命名该方法: waitingForLoginSuccess().
3.POM优势
POM提供了一种在UI层操作、业务流程与验证分离的模式,这使得测试代码变得更加清晰和高可读性
对象库与用例分离,使得我们更好的复用对象,甚至能与不同的工具进行深度结合应用
可复用的页面方法代码会变得更加优化
更加有效的命名方式使得我们更加清晰的知道方法所操作的UI元素。例如我们要回到首页,方法名命名为: gotoHomePage(),通过方法名即可清晰的知道具体的功能实现。