作者:追风神驹体育专营_462 | 来源:互联网 | 2023-09-05 10:34
1、浏览器驱动程序驱动Chrome浏览器,模拟人的操作,自动浏览网页,自动提取数据。分别介绍:Chrome,Chromium,Selenium,Webdriver,ChromeDr
1、浏览器驱动程序
驱动Chrome浏览器,模拟人的操作,自动浏览网页,自动提取数据。分别介绍:Chrome,Chromium,Selenium,Webdriver,ChromeDriver
(1)Chrome是个浏览器,Chromium也是个浏览器。Chromium是Google主导的开源项目,为Chrome提供了大部分代码。
(2)Selenium是浏览器驱动器,适配了IE、Chrome、Firefox等主流浏览器。2.x版本整合了webdriver以及原版selenium。两个项目合二为一,虽然名字还叫selenium,但也可以叫Webdriver。
(3)WebDriver也是浏览器驱动器,它与Selenium功能一样,但设计思路不同。
(4)ChromeDriver是Selenium2适配Chrome的驱动,由Google发布。
2、selenium版本介绍
selenium2.x:相比于selenium1.x,2.x版本整合了webdriver以及原版selenium。两个项目合二为一,虽然名字还叫selenium,但也可以叫Webdriver。这个版本的selenium是利用浏览器原生的API,封装成一套更加面向对象的Selenium WebDriver API。
直接操作浏览器页面里的元素,甚至操作浏览器本身(截屏,窗口大小,启动,关闭,安装插件,配置证书之类的)。由于使用的是浏览器原生的API,速度大大提高,而且调用的稳定性交给了浏览器厂商本身,显然是更加科学。然而带来的一些副作用就是,不同的浏览器厂商,对Web元素的操作和呈现多少会有一些差异,这就直接导致了Selenium WebDriver要分浏览器厂商不同,而提供不同的实现。
三、结构
下进入正题,要通过selenium实现自动化测试,最最主要是需要三种东西:测试需要用的代码、webdriver、浏览器。今天想要分享的也是这三者关系。
① 代码
selenium支持多种语言(java/c#/python/ruby)。测试工程师通过编程语言,调用浏览器对应API实现需要的功能。
② webdriver
webdriver,就像是一个媒介。代码驱动webdriver。上文提过,不同浏览器有不同的webdriver。例如火狐的FirefoxDriver,谷歌的 ChromeDriver。
③ 浏览器
不同的浏览器对应不同的webdriver。
从上图,测试代码输入操作给webdriver,webdriver再去控制浏览器,最终达到的效果就是代码实现对浏览器的操作。