此文较长,我比较讨厌写的七零八落的博文,所以这里是对本人学习selenium的一个整合,首先会介绍一下Selenium + Java环境搭建,接着会通过代码对Selenium Java中常用API用法以及注意事项进行说明,ok,let’s start.
准备工作
Java环境-JDK
·JDK的安装网上教程一大堆,就不说了
IDE-IntelliJ IDEA
·IntelliJ IDEA是本人用过的IDE里比较好用的一款,推荐一下
Selenium-jar
·Selenium,下载完了以后会有一个jar包,找个地方放好
maven安装
·maven安装是非常简单的,可以参考:
·for windows
·for mac
好用的浏览器
·推荐Chrome,下载地址就百度吧
浏览器驱动
·如果是用的Chrome,到这里对应关系及驱动下载找
·注意配置环境变量
搭建环境
打开IDE,新建一个工程
Project name: 项目名称
Project location: 项目在硬盘上的路径
接下来:
1)右键左侧项目列表 src—>New —> Package 弹出窗口, 输入包的名:javaBase
2)右键左侧创建的包名:java —>New —> Java Class 弹出窗口, 输入类的名:HelloSelenium
在HelloSelenium.java中编写第一个java文件
package com.java.base;
public class HelloSelenium {
public static void main(String[] args){
System.out.println("hello Selenium");
}
}
运行一下,看下是不是能正常抛出 hello Selenium
ok,一切正常,接下来我们导入Selenuim-jar包:
点击菜单栏 File –> Project Structure(快捷键Ctrl + Alt + Shift + s) ,点击 Project Structure界面左侧 的“Modules” 。在“Dependencies” 标签界面下,点击右边绿色的“+” 号,选择第一个选项“JARs or directories…” ,选择相应的 jar 包,点“OK” ,jar包添加成功
如果我们刚才新建的是一个java项目,我们需要把它转换成一个maven工程
很简单,项目上右键点击 Add Framework Support,然后勾选Maven,点击ok
接下来我们打开pom.xml 配置Selenium.
<?xml version="1.0" encoding="UTF-8"?>
<project
xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.mvn.demo</groupId>
<artifactId>MyMvnPro</artifactId>
<version>1.0-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<!-- selenium-java -->
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.4.0</version>
</dependency>
</dependencies>
</project>
点击弹框中的 import Changes
接下来我们写一个Demo来验证一下,新建一个 SeleniumTest类
package javaBase;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
public class SeleniumTest {
public static void main(String[] args) {
WebDriver driver = new ChromeDriver();
driver.get("http://www.baidu.com");
String title = driver.getTitle();
System.out.printf(title);
driver.close();
}
}
到这里,环境就搭建好了
常用API
定位元素
定位元素是最常用也最重要的API之一,与python类似,java中也提供了八种定位方法
·id
·name
·class name
·tag name
·link text
·partial link text
·xpath
·css selector
对应的java代码为
findElement(By.id())
findElement(By.name())
findElement(By.className())
findElement(By.tagName())
findElement(By.linkText())
findElement(By.partialLinkText())
findElement(By.xpath())
findElement(By.cssSelector())
关于元素定位的知识可以参考:
1.(https://saucelabs.com/resources/articles/selenium-tips-css-selectors)
2.(http://blog.csdn.net/qingchunjun/article/details/42581261)
想要了解更多可以参考:
1. xpath语法
2. css选择器
API实例
这里我会说到关于web自动化的一些常用API用法及注意事项
包括 :
1.模拟鼠标操作
2.模拟键盘操作
3.获取断言
4.设置元素等待
5.定位元素组
6.表单切换
7.多窗口切换
8.下拉框选择
9.警告框处理
10.文件上传
11.cookie操作
12.调用JavaScrip
13.窗口截图 等
感兴趣可以一一试试,参考代码如下:
package JavaBase;
import com.