selenium测试框架篇,页面对象和元素对象的管理

发表于:2018-6-26 10:29

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:young    来源:博客园

  做自动化框架,不可避免的就是对象库。
  有一个好的对象库,可以让整个测试体系:
  1.更容易维护
  2.大大增加代码重用
  3.增加测试系统的稳定性
  这里先了解一下我所说的对象库:
    
  所谓的页面对象,是指每一个真是的页面是一个对象。
  比如zhihu的登陆页面是一个页面对象,http://www.zhihu.com/#signin
  这个页面对象主要包含一个输入邮箱的输入框(一个元素对象),一个输入密码的密码框
  一个登陆框。当然,zhihu不止一个页面,有无数页面,每一个页面都可以封装为一个对象。而每个
  页面的元素,也可以封装成一个个元素对象。
    
  为什么要封装成一个个对象?
  还是以这个登陆页面为例,如果有一天zhihu改版,登陆界面UI变了,(但是需要输入用户名和密码还有登陆按钮不会消失吧)。
  登陆页面的元素的位置也相应改变,如果你的测试用例没有封装过页面和元素, 每个页面都是拿webdriver 直接写,页面元素定位
  也分布到测试用例中,这要维护起来要全部改掉测试用例。如果你封装了页面,封装了元素,再封装一个对应的登陆Action,你的每个
  测试用例是调用的login.action()。  这样,你只需要改变你对象库的内容就完美解决UI变化,而不必一个个修改测试用例。
  测试框架目录如下:
    
  接下来一这个登陆为例:
  首先封装一个BasePage的类,毕竟所有的页面都有共同的东西,每个页面都有元素,每个页面元素都有相应的方法
  这里简单封装了几个方法,如type
    
  上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。
41/41234>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号