以chrome为例:
步骤如下:
- 1.资源下载
需要下载driver和chrome版本对应关系
1.1 资源下载
官网地址:http://docs.seleniumhq.org/download/
各个版本下载地址:http://selenium-release.storage.googleapis.com/index.html
各浏览器驱动下载地址:
Gecko driver : https://github.com/mozilla/geckodriver/releases
Chrome driver: http://chromedriver.storage.googleapis.com/index.html https://npm.taobao.org/mirrors/chromedriver
driver和chrome版本对应关系: https://blog.csdn.net/huilan_same/article/details/51896672
IE driver : http://selenium-release.storage.googleapis.com/index.html
Edge driver : https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/
Opera driver : https://github.com/operasoftware/operachromiumdriver/releases
Safari driver : https://developer.apple.com/library/content/releasenotes/General/WhatsNewInSafari/Introduction/Introduction.html
PhantomJS driver : http://phantomjs.org/
- 2.添加pom.xm文件
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.13.0</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-server</artifactId>
<version>3.11.0</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-chrome-driver</artifactId>
<version>3.13.0</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-firefox-driver</artifactId>
<version>3.13.0</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.9</version>
</dependency>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.14.3</version>
</dependency>
- Chrome运行
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver", "E:\\Tools\\chromedriver.exe");
//初始化一个chrome浏览器实例,实例名称叫driver
WebDriver driver = new ChromeDriver();
//最大化窗口
driver.manage().window().maximize();
//设置隐性等待时间
driver.manage().timeouts().implicitlyWait(8, TimeUnit.SECONDS);
// get()打开一个站点
driver.get("https://www.baidu.com");
//getTitle()获取当前页面title的值
System.out.println("当前打开页面的标题是: "+ driver.getTitle());
//关闭并退出浏览器
driver.quit();
}
- 元素定位
Selenium提供了8种定位方式。
id
name
class name
tag name
link text
partial link text
xpath
css selector
- 元素操作
clear() 清除文本
sendKeys(value) 模拟按键输入
click() 单击元素
submit() 用于提交表单
getSize() 返回元素的尺寸
getText() 获取元素的文本
getAttribute(name) 获得属性值
isDisplayed() 设置该元素是否用户可见
element.clear();