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的 ...
随机推荐
- # Doing homework again(贪心)
# Doing homework again(贪心) 题目链接:Click here~~ 题意: 有 n 门作业,每门作业都有自己的截止期限,当超过截止期限还没有完成作业,就会扣掉相应的分数.问如何才 ...
- c++学习笔记之类和对象(二、构造函数和析构函数)
1.构造函数(Constructor):在C++中,有一种特殊的成员函数,它的名字和类名相同,没有返回值,不需要用户显式调用(用户也不能调用),而是在创建对象时自动执行. 这种特殊的成员函数就是构造函 ...
- leecode刷题(26)-- 用栈实现队列
leecode刷题(26)-- 用栈实现队列 用栈实现队列 使用栈实现队列的下列操作: push(x) -- 将一个元素放入队列的尾部. pop() -- 从队列首部移除元素. peek() -- 返 ...
- Centos7:dubbo监控中心安装,配置和使用
制作dubbo-admin.war文件 下载dubbo-admin https://github.com/alibaba/dubbo 注:2.6版本后源码中不包含dubbo-admin工程 在dubb ...
- appium 自动化测试环境搭建
最近再学习appium,把学习的过程记录下来,以防止到时候 换个电脑就不知道这么安装搭建appium环境了. 环境搭建: 0.JDK环境是必备的,这里大家自行百度, 1.安装 node 环境,前辈 ...
- textarea 限制输入字数
一般情况下很多人限制textarea的输入字数会使用 onkeyup 或 onchange事件,但是这两种事件都带有明显的不足. onkeyup 事件只能监听键盘事件,而对于用户的粘贴毫无办法:而on ...
- shell脚本中的日期处理
Ps:这篇文章只是为了做个分类,以后有看到比较好的时间处理命令都会列在这里,您如果有什么好的时间处理命令,可以评论中添加,我会定期查看更新,谢谢! 1.定义一个参数DATE_TODAY,用于记录当天时 ...
- Tensorflow源码编译常见问题点总结
Tensorflow源码编译分两种:一种是本地源码编译,另一种是针对ARM平台的源码编译. 接下来分别介绍: 一.本地编译 本地编译时,使用的编译工具是本地GCC. 一般会碰到以下问题: 第1个:ex ...
- Mac安装PHP(Homebrew/php弃用、其他第三方tap也已经弃用或者迁移后的安装配置方案)
一.前言 看网上很多资料,大多数都是 mac安装php,只需要: brew tap homebrew/php brew install phpXX 安装php扩展只需要: brew install p ...
- 03-spring框架—— AOP 面向切面编程
3.1 动态代理 动态代理是指,程序在整个运行过程中根本就不存在目标类的代理类,目标对象的代理对象只是由代理生成工具(不是真实定义的类)在程序运行时由 JVM 根据反射等机制动态生成的.代理对象与目标 ...