自动化测试是时代趋势,因此很多测试人员开始研究自动化测试,web自动化测试化测试并不难,但是很多人都是被挡在了环境搭建这一步,后面学习激情全无,这里,韬哥手把手教大家搭建火狐浏览器下的自动化测试环境(基于java)。

  为什么搭建自动化测试环境难呢,因为环境要求高,selenium版本,驱动文件版本,浏览器版本这中间有适配问题,如果没注意这些版本信息,就可能导致web自动化程序就跑不起来。

  下面将为大家演示selenium 3.x下的火狐自动化自动化环境搭建:

  1.准备selenium 3.5.1,maven下的依赖信息如下:

  

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

  2.准备火狐驱动文件geckodriver.exe(从selenium 3.0开始火狐浏览器的自动化就需要驱动文件来驱动了),这里准备的驱动文件版本为0.19.0,大家可以自己去selenium官网下载,或者直接使用老师给大家分享的网盘地址去下载【链接:https://pan.baidu.com/s/1oN8tg66cobM7yX-T6GKuFw 密码:9rb7】

  

  另外大家记得把火狐浏览器的版本更换为56(并且禁止浏览器更新功能,防止浏览器后台自动更新版本,至于怎么禁止,很简单的事情,pls自行百度),因为根据geckodriver的change log建议,0.19.0版本的驱动最好是适配:Firefox 55.0 (或更高)+ Selenium 3.5(或更高),这就是为什么上面为什么用selenium3.5.1。

  

  以下为大家整理火狐的各版本下载链接:【http://ftp.mozilla.org/pub/firefox/releases/】,或者大家可以直接去我的网盘下载:【链接:https://pan.baidu.com/s/1xMBkf_ViIV_RyFGN2V-Qaw 密码:eyo6】

  

  3.验证代码

  

package web.demo;

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test; /**火狐的自动化测试环境搭建
* @author NickJiang
*
*/
public class FirefoxAuto {
WebDriver driver;
@BeforeClass
public void init(){
System.setProperty("webdriver.gecko.driver", "src/test/resources/geckodriver.exe");
driver = new FirefoxDriver();
} @Test
public void test(){
driver.get("http://www.baidu.com");
System.out.println("打开网站等待3秒后再关闭");
try {
Thread.sleep(3000);
} catch (Exception e) {
e.printStackTrace();
}
} @AfterClass
public void teardown(){
driver.quit();
}
}

驱动文件存放目录:src/test/resources/geckodriver.exe,如下图:

  4.效果如下,意味着环境搞定:

至此,基于java+selenium 3.x的火狐自动化测试环境就准备好了。java+selenium 2.x 后面会择时为大家补充。下一篇将为大家带来chrome下自动化环境搭建。

Web自动化测试环境搭建1(基于firefox火狐浏览器)的更多相关文章

  1. RobotFrameWork Web自动化测试环境搭建

    前言 Robot Framework是一款python编写的功能自动化测试框架.具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端或者接口,可以进行分布式测试执行.主要用于轮次很多的验收 ...

  2. 研发环境 chrome谷歌浏览器和firefox火狐浏览器解决跨域问题

    1 火狐浏览器 (1).先在地址栏输入about:config,然后单击“我了解此风险”. (2).找到security.fileuri.strict_origin_policy,然后在值下面的tru ...

  3. selenium +python web自动化测试环境搭建

    基础框架搭建 1.安装python 2.安装selenium cmd输入pip install selenium 问题:在python中输入from selenium import webdriver ...

  4. 菜鸟学自动化测试(八)----selenium 2.0环境搭建(基于maven)

    菜鸟学自动化测试(八)----selenium 2.0环境搭建(基于maven) 2012-02-04 13:11 by 虫师, 11419 阅读, 5 评论, 收藏, 编辑 之前我就讲过一种方试来搭 ...

  5. 《手把手教你》系列基础篇之(二)-java+ selenium自动化测试-环境搭建(下)基于Maven(详细教程)

    1.简介 Apache Maven是一个软件项目管理和综合工具.基于项目对象模型(POM)的概念,Maven可以从一个中心资料片管理项目构建,报告和文件.由于现在企业和公司中Java的大部分项目都是基 ...

  6. Python3+Selenium2完整的自动化测试实现之旅(一):自动化测试环境搭建

    1     环境搭建准备 (1)    下载Python3版本的安装包,直接官网下载即可:Python官网:https://www.python.org/ (2)    下载Python的基础工具包p ...

  7. selenium + python 自动化测试环境搭建

    selenium + python 自动化测试 —— 环境搭建 关于 selenium Selenium 是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中,就像真正的用户在操 ...

  8. Selenium终极自动化测试环境搭建(二)Selenium+Eclipse+Python

    Selenium终极自动化测试环境搭建(二)Selenium+Eclipse+Python 前面举例了Selenium+Eclipse+Junit+TestNG自动化测试环境的搭建,在前一篇的基础上, ...

  9. Appium 简介与自动化测试环境搭建

    1. Appium 简介 2. Appium 自动化测试环境搭建 1. Appium 简介 Appium 是一个开源测试自动化框架,可用于原生,混合和移动 Web 应用程序测试. 它使用 WebDri ...

随机推荐

  1. Kali-linux目录加密

    在Kali中提供了一个目录加密工具TrueCrypt.该工具是一款开源的绿色加密卷加密软件,不需要生成任何文件即可在硬盘上建立虚拟磁盘.用户可以按照盘符进行访问,所以虚拟磁盘上的文件都被自动加密,访问 ...

  2. 【UVA11806 Cheerleaders】 题解

    题目链接:https://www.luogu.org/problemnew/show/UVA11806 容斥原理+组合数 正着找合♂fa的不好找,那就用总方案数-不合♂fa的 #include < ...

  3. init/loadView/viewDidLoad/initWithNibName/awakeFromNib/initWithCoder的用法

    init/loadView/viewDidLoad/viewDidUnload 这么细节的东西想来大家都不在意,平时也不会去关系,但是在面试时却常常被提到,所以了解viewController的生命周 ...

  4. MySql第几行到第几行语句

    1.查询第一行记录: select * from table limit 1 2.查询第n行到第m行记录 select * from table1 limit n-1,m-n; SELECT * FR ...

  5. 轻量ORM-SqlRepoEx (六) JOIN

    示例使用的是最新 SqlRepoEx 2.0.2 可在:https://github.com/AzThinker/SqlRepoEx2.0Demo 或:https://gitee.com/azthin ...

  6. 关于spring配置文件的头部编写

    //普通spring配置文件模板1 <?xml version="1.0" encoding="UTF-8" ?> <beans xmlns: ...

  7. JavaScript-比较运算符

    一.概述 > 大于运算符 < 小于运算符 <= 小于或者等于运算符 >= 大于或者等于运算符 == 相等运算符 === 严格相等运算符 != 不相等运算符 !== 严格不相等运 ...

  8. MySQL学习之变量

    变量 MySQL本质是一种编程语言,需要很多变量来保存数据,mysql中很多的属性控制都是通过MySQL中固有的变量来实现的. 系统变量 系统内部定义的变量,系统变量针对的是所有用户(MySQL客户端 ...

  9. Flask入门数据库的查询集与过滤器(十一)

    1 查询集 : 指数据查询的集合 原始查询集: 不经过任何过滤返回的结果为原始查询集 数据查询集: 将原始查询集经过条件的筛选最终返回的结果 查询过滤器: 过滤器 功能 cls.query.filte ...

  10. 跨域详解之-----Jsonp跨域

    一.通过jsonp跨域 在js中,我们直接用XMLHttpRequest请求不同域上的数据时,是不可以的.但是,在页面上引入不同域上的js脚本文件却是可以的,jsonp正是利用这个特性来实现的. 比如 ...