selenium-java的使用教程

selenium的使用教程

概述:

selenium 是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera等。selenium 是一套完整的web应用程序测试系统,包含了测试的录制(selenium IDE),编写及运行(Selenium Remote Control)和测试的并行处理(Selenium Grid)。


Selenium的核心Selenium Core基于JsUnit,完全由JavaScript编写,因此可以用于任何支持JavaScript的浏览器上。
selenium可以模拟真实浏览器,自动化测试工具,支持多种浏览器,爬虫中主要用来解决JavaScript渲染问题。


这里要说一下比较重要的PhantomJS,PhantomJS是一个而基于WebKit的服务端JavaScript API,支持Web而不需要浏览器支持,其快速、原生支持各种Web标准:Dom处理,CSS选择器,JSON等等。PhantomJS可以用用于页面自动化、网络监测、网页截屏,以及无界面测试

简单来说:selenium就是一个基于浏览器引擎的浏览器模拟工具,让我们的代码去操作浏览器引擎的运行,从而达到自动化测试的目的,另外selenium在爬虫中可以充当解析异步渲染的页面,比如ajax页面加载,使得我们不需要去分析复杂的页面js运行逻辑或者找寻请求接口的参数模拟,我们只需要启动selenium,等待渲染后,直接选取渲染后的页面进行爬虫处理工作。本篇使用java操作selenium。

一、基本Api操作

1 、环境配置

1) pom引用  (使用2.41.0是因为本测试用例使用的是webmagic工程中建立的,而webmagic引用的就是2.41.0依赖,为了消除jar包依赖的影响,特此选择一致的版本)

		<dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-java</artifactId>
            <version>2.41.0</version>     
		</dependency>
		
		<dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-api</artifactId>
            <version>2.41.0</version>
		</dependency>

2) 驱动安装

Selenium 可以使用多个浏览器驱动,本次只演示Chrome的驱动,Selenium需要我们自己去下载浏览器驱动放入本地目录,在使用是配置system参数,而下载那个版本的驱动也是有严格要求的,下载的驱动必须和本机安装的chrome浏览器版本符合对应关系,否则会报错。

版本对应关系:https://npm.taobao.org/mirrors/chromedriver  (比如chrome版本是88.0.4324.xx,那么找到88.0.4324下载即可)

驱动下载后,我们设置到下面这个路径 E:\\drive\\chrome\\chromedriver.exe

3)  基本使用

	System.setProperty("webdriver.chrome.driver", "E:\\drive\\chrome\\chromedriver.exe"); 
		WebDriver webDriver = new ChromeDriver();
		
		webDriver.get("https://www.baidu.com");
		System.out.println(webDriver.getTitle());

2、Api操作-定位方式

selenium 的定位方式一共有八种, id、name、class name、tag name、 link text、partial link text、xpath、css selector

我们下面选取几种进行演示

        findElement(By.id())
        findElement(By.name())
        findElement(By.className())
        findElement(By.tagName())
        findElement(By.linkText())
        findElement(By.partialLinkText())
        findElement(By.xpath())
        findElement(By.cssSelector())

@Test
	public void test1() {
		// 选中百度一下
		System.setProperty("webdriver.chrome.driver", "E:\\drive\\chrome\\chromedriver.exe"); 
		WebDriver we
  • 6
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值