多测师是一家拥有先进的教学理念,强大的师资团队,业内好评甚多的接口自动化测试培训机构!

17727591462

联系电话

您现在所在位置:接口自动化测试培训 > 新闻资讯

接口自动化测试-selenium1和2的原理比较

更新时间:2021-10-08 01:41:08 作者:admin 浏览:548

接口自动化测试-selenium1和2的原理比较

  一、selenium1的原理

  selenium1包括以下两部分:seleniumserver、ClientLibraries组成

  1.seleniumserver

  seleniumserver负责控制浏览器的行为。主要有launcher,HttpProxy,seleniumcore。seleniumcore使用SeleniumServer嵌入到浏览器页面中。实质上,seleniumcore是由JS函数组成,这样我们可以实现用程序对浏览器进行操作。

  2.clientLibraries

  编写测试用例时控制seleniumserver的库

  3.seleniumRC与TestCase之间的关系

接口自动化测试-selenium1和2的原理比较

  4.testCase工作过程

  (1).测试案例(Testcase)通过ClientLib的接口向SeleniumServer发送Http请求,要求和SeleniumServer建立连接。

  为什么要通过发送Http请求控制SeleniumServer而不采用其他方式呢?从上文可以看出,SeleniumServer是一个独立的中间服务器(确切地说是代理服务器),它可以架设在其他机器上!所以测试案例通过发送HTTP请求去控制SeleniumServer是很正常的。

  (2).SeleniumServer的Launcher启动浏览器,把SeleniumCore加载入浏览器页面当中,并把浏览器的代理设置为SeleniumServer的HttpProxy。

  (3).测试案例通过ClientLib的接口向SeleniumServer发送Http请求,SeleniumServer对请求进行解析,然后通过HttpProxy发送JS命令通知SeleniumCore执行操作浏览器的动作。

  (4).SeleniumCore接收到指令后,执行操作。

  (5).浏览器收到新的页面请求信息(因为在(4)中,SeleniumCore的操作可能引发新的页面请求),于是发送Http请求,请求新的Web页面。

  由于SeleniumServer在启动浏览器时做了手脚,所以SeleniumServer会接收到所有由它启动的浏览器发送的请求。

  (6).SeleniumServer接收到浏览器的发送的Http请求后,自己重组Http请求,获取对应的Web页面。

  (7).SeleniumServer的HttpProxy把接收的Web页面返回给浏览器。

  二、selenium2-seleniumwebDriver原理

  1.直接利用浏览器原生的API,封装成更加面向对象的seleniumWebDriverAPI,直接操作浏览器页面里的元素,甚至操作浏览器本身。如:截屏、窗口大小、启动、关闭、安装插件、配置证书等。

  2.selenium2是基于对象的测试。不同的对象拥有不同的操作方法。selenium1则更多的基于方法的API。

  3.WebDriver还支持Android和ios上的浏览器

  4.便于与junit和testNG结合

  5.seleniumGrid实现多平台同时测试,满足兼容性测试需求

  以上是关于selenium1和2的原理比较,由多测师亲自撰写。https://www.aichudan.com/

联系电话

17727591462

返回顶部