java二次开发浏览器内核_深入理解基于Selenium的二次开发

对于做web端自动化测试的人来说,可能接触selenium比QTP还要多,但是我们在做基于selenium的二次开发的时候,经常会说到二次开发是 为了易于维护,很多人可能不懂得维护的价值是什么,和到底要维护什么。今天专门写一篇关于二次开发的文章,希望能够帮到有需要做二次开发的人。

二次开发也就是我们常说的封装selenium,或者做框架。但是一个框架要包含丰富的类和方法。要有一套完整的体系来帮助我们进行封装。可以说框架的设 计思想就是整个框架的灵魂,如果设计思想很正确也就意味着这个框架成功了一半,剩下的就是我们怎么样用程序实现这个思想,在开发的过程中我们也许会用到一 些设计模式和引用一些开源框架。这些只是一个开发人员或者程序设计者的基本素质。至于如果把selenium能够有效的封装和一些基本思想,我们来详细的 了解一下。

在这篇文章里面只针对selenium的webdriver来进行讨论,我们不再对rc做任何的解释和说明。我们都知道webdriver的使用过程中, 贯穿始终的就是一个driver, 并且这个driver代表了一个浏览器的当前窗口,我们进行操作的过程中只是进行当前窗口的操作,也就是最这个current window进行的一系列的操作,如果我们需要对打开的新的window来进行操作的话,我们需要switchTo,包括操作frame,当然整个流程下 的操作确实让我们觉得不是很难编写,但是我们编写脚本的过程中需要用到的一些辅助功能可能就会很难的编写,比如最大化浏览器,视角移动到操作的元素等等, 这个过程一次编写我们可以做到,但是反复的编写的话肯定是一个让人很头疼的过程,所以这个时候我们要去封装一些常用的方法,我们有了做一个比较完整的框架 的想法,但是我们忽然又意识到了,这样的话,我们需要把driver封装起来,因为整个测试的case都是针对的这个driver,并且只有一个 driver,这样子的话我们不允许创造多个的driver,也就意味着我们要把自己编写的小工具类和driver联系起来,并且我们的测试用例case 类也需要调用这个driver,其实很简单,我们可以用注入的方式来做,把driver当成tools类的一个属性值,然后注入到我们的case类中,也 可以通过set的方法来进行操作。有了这些基础,我们可以防止无限的编写重复的方法,这样我们有了自己的工具类。如果说这就是框架的话,就会显得非常的肤 浅,因为我们写的这些方法根本没有任何逻辑可言,只是把需要的方法统统的堆到了一起,

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值