selenium java 自动化测试 基于火狐浏览器/谷歌浏览器
:环境 java1.8+ieda
直接上代码
pom.xml
<?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.dqcer</groupId>
<artifactId>seleniumAotuTest</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging> <dependencies>
<!-- 启动谷歌浏览器需要的特点jar包-->
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>22.0</version>
</dependency>
<!-- 集成selenium-->
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.7.1</version>
</dependency>
</dependencies>
</project>
SeleniumAotuTestDemo.java类
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.firefox.FirefoxDriver; import java.io.File;
import java.util.concurrent.TimeUnit; /**
* @Author: dongQin
* @Date: 2018/6/14 8:51
* @Description: selenium基于火狐浏览器/谷歌浏览器的自动化测试
*/ public class SeleniumAotuTestDemo { private static WebDriver webDriver; public static void main(String[] args) throws InterruptedException { // 初始化谷歌浏览加载所需的配置程序
initChromeDriver(); // 初始化火狐浏览器加载所需的配置程序
//initFirefox(); // 在打开地址前,清除cookies
webDriver.manage().deleteAllCookies(); // 同步浏览器
webDriver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS); // 打开目标地址,这个使用百度为例。只要是web系统都可以
webDriver.get("https://www.baidu.com"); // 搜索spring boot // 定位当前的输入框
WebElement element = webDriver.findElement(By.xpath("//*[@id=\"kw\"]")); // 在输入框输入"spring boot"
element.sendKeys("spring boot"); // 定位当前的"百度一下"按钮所在的位置
WebElement submint = webDriver.findElement(By.xpath("//*[@id=\"su\"]")); // 点击提交
submint.click(); // 休息3秒,等待搜索结果并查看
Thread.sleep(3000); // 最后退出,关闭浏览器
webDriver.quit(); System.out.println("good job!");
} /**
* @Author: dongQin
* @Date: 2018/6/14 9:09
* @Description: 初始化加载所需的配置程序
*/ public static void initChromeDriver(){
// chromedriver.exe要与当前使用的谷歌浏览器版本一一对应,下载的地址可在淘宝或者GitHub,并将其解压放在与谷歌
// .exe 文件同级下
File file = new File("C:\\Program Files (x86)\\Google\\Chrome\\Application\\chromedriver.exe");
System.setProperty("webdriver.chrome.driver", file.getAbsolutePath()); webDriver = new ChromeDriver();
} /**
* @Author: dongQin
* @Date: 2018/6/14 9:51
* @Description: 初始化火狐浏览器加载所需的配置程序
*/ public static void initFirefox(){ // firefox.exe同样要与当前使用的火狐浏览器版本一一对应,下载的地址可在淘宝或者GitHub // 指定火狐浏览器程序的位置
System.setProperty("webdriver.firefox.bin", "D:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe"); // 指定firefox.exe插件的位置
System.setProperty("webdriver.gecko.driver", "C://geckodriver.exe"); webDriver = new FirefoxDriver();
}
}
如何定位当前位置呢?By.xpath()获取括号的值,有个小技巧,打开谷歌浏览器,打开控制台,经过图下操作就可自动获取到xpath值,复制到By.xpath()括号中即可
selenium java 自动化测试 基于火狐浏览器/谷歌浏览器的更多相关文章
- 大家注意:升级 win8.1 火狐浏览器 谷歌浏览器 搜狗五笔输入法 都不能用啦
大家注意:升级 win8.1 火狐浏览器 谷歌浏览器 搜狗五笔输入法 都不能用啦 我的电脑64位 win8 thinkpad e531,8G内存 刚在线升级完8.1,发现这些问题,大家注意,有知道问题 ...
- python3+selenium入门02-操作火狐浏览器
使用selenium打开浏览器的时候,需要先去selenium官网下载一个对应浏览器的的driver插件.selenium下载.官网在国外可能打不开.或者可以从我网盘下载,但可能不是最新的网盘链接.将 ...
- Selenium启动最新的火狐浏览器异常排查
报错如下: WebDriverException: Message: 'Can\'t load the profile 打开谷歌浏览器和IE浏览器均正常 网上查阅资料,疑似与selenium版本相关联 ...
- Selenium+Java自动化测试的方法
1.设置等待时间Thread.sleep(2000); (1000代表1s)2.断言assertion:验证应用程序的状态是否同所期望的一致.常见的断言包括:验证页面内容,如标题是否为X或当前位置是否 ...
- cumber + selenium +java自动化测试
1.新建一个maven项目,pom文件为: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi=&quo ...
- Selenium+java自动化测试常用知识点
一.元素的定位 1.通过ID定位元素: findElement(By.id(element)); 2.通过元素的名称定位元素: findElement(By.name(element)); 3.通过元 ...
- Web自动化测试环境搭建1(基于firefox火狐浏览器)
自动化测试是时代趋势,因此很多测试人员开始研究自动化测试,web自动化测试化测试并不难,但是很多人都是被挡在了环境搭建这一步,后面学习激情全无,这里,韬哥手把手教大家搭建火狐浏览器下的自动化测试环境( ...
- selenium+Java使用内容记录(全)
1.模拟键盘操作,使用enter键 2.等待几秒 3.浏览器最大化 4.获取cookie,删除cookie 5.模拟鼠标 6.selenium+java 识别验证码(数字+字母组合) 7.seleni ...
- 《手把手教你》系列基础篇之(四)-java+ selenium自动化测试- 启动三大浏览器(下)基于Maven(详细教程)
1.简介 上一篇文章,宏哥已经在搭建的java项目环境中实践了,今天就在基于maven项目的环境中给小伙伴们 或者童鞋们演示一下. 2.eclipse中新建maven项目 1.依次点击eclipse的 ...
随机推荐
- FFmpeg4.0笔记:封装ffmpeg的音频重采样功能类CSwr
Github https://github.com/gongluck/FFmpeg4.0-study/tree/master/Cff CSwr.h /************************* ...
- 小白学习django第六站-http相关
请求与相应 HttpRequest对象API def home(request): print('path:', request.path) print('mothod:', request.meth ...
- # 关于设置AUTH_USER_MODEL出现的问题
关于设置AUTH_USER_MODEL出现的问题 在运行的时候出现了一个bug: AttributeError: type object 'UserProfile' has no attribute ...
- 集成学习-Boosting 模型深度串讲
首先强调一下,这篇文章适合有很好的基础的人 梯度下降 这里不系统讲,只介绍相关的点,便于理解后文 先放一个很早以前写的 梯度下降 实现 logistic regression 的代码 def tidu ...
- RabbitMQ 示例-生产者-消费者-direct-topic-fanout
这是生产者和消费者2个项目, 包含 direct,topic,fanout模式下的消费,springboot + rabbitmq 代码地址:https://github.com/duende99/R ...
- 9.用ExecuteSqlCommand执行存储过程
比如你有一个存储过程 IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[CreateAutho ...
- 数据绑定-Java的基本数据类型绑定
Demo.html <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> < ...
- vue 内存数组变化监听
watch: { carts: { handler(val, oldVal) { subtotal(this.carts); console.log(this.carts) }, deep: true ...
- python学习-输入输出
Python的输入和输出非常方便,下面详细记录一下 任何计算机程序都是为了执行一个特定的任务,有了输入,用户才能告诉计算机程序所需的信息,有了输出,程序运行后才能告诉用户任务的结果.输入是Input, ...
- flask实现文件的上传
文件上传过程中,一定要进行文件大小的校验,如果用户上传文件过大,比如:100GB,所以一直在处理这个请求,别的请求进来就无法处理了,所以要限制上传文件的大小. flask中文件上传大小的校验 flas ...