自动化测试是时代趋势,因此很多测试人员开始研究自动化测试,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. List环形双向链表

    实现一个环形的双向链表,链表的每个节点都保存三个信息,当前节点的值value,前一个节点的指针prev,后一个节点的指针next.因为是环形的,所以最后一个节点的next指向第一个节点,而第一个节点的 ...

  2. ajax简单做html查询删除(鲜花)

    下载视频+项目链接:https://pan.baidu.com/s/1jUld3-Nqm3fUAzFSX8kjlQ

  3. ARM 内核 汇编指令 的 8种 寻址方式

    str: store register ->指令将寄存器内容存到内存空间中, ldr:  load register 将内存内容加载到通用寄存器, ldr/str 组合来实现ARM CPU 和内 ...

  4. Linq不分组求多列的和

    我们需要写Linq查询语句,使用let来创建一个新的变量 Let 关键字 “let”关键字在查询语法中很有用.它会投影一个新的范围变量,允许重新使用表达式并使查询更具可读性. 例如: 这里需要写,两遍 ...

  5. Java中的IO流(二)

    上一篇<Java中的IO流(一)>把学习IO流的字符流作了一下记录,本篇把字节流记录一下. 一,Java中的字节流 Java中的字节流的操作方式与字符流的操作方式大致相同,连方法名都是类似 ...

  6. asp.net mvc5 step by step(四)——关于Controller的ActionResult

    ActionResult是控制器方法执行后返回的结果类型,控制器方法可以返回一个直接或间接从ActionResult抽象类继承的类型,如果返回的 是非ActionResult类型,控制器将会将结果转换 ...

  7. 自动化运维工具Ansible实战(四)常用模块

    转载链接:http://blog.51cto.com/liqingbiao/1962609   Ansible模块按功能分为:云模块.集群模块. 命令模块.数据库模块.文件模块.资产模块.消息模块.监 ...

  8. CSS、JavaScript学习过程

    初学JavaScript,通过博客记录自己学习过程中遇到的问题.(包含少量CSS) 零碎记录 JavaScript 输出 type="text/javascript" 那些老旧的实 ...

  9. 『C++』Temp_2018_12_06

    #include <iostream> #include <string> using namespace std; class Type{ public: string Na ...

  10. 【NXP开发板应用—智能插排】2.初步解析example之GPI

    [前言] 首先感谢深圳市米尔科技有限公司举办的这次活动并予以本人参加这次活动的机会,以往接触过嵌入式,但那都是皮毛,最多刷个系统之类的,可以说对于嵌入式系统开发这件事情是相当非常陌生的,这次活动为我提 ...