一、java+selenium+firefox

1.环境准备:JDK1.8

2.安装firefox浏览器v59

3.下载驱动:https://github.com/mozilla/geckodriver/releases

4.selenium依赖pom.xml导入:https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java

selenium 历史版本镜像下载地址:https://npm.taobao.org/mirrors/selenium

org.seleniumhq.selenium

selenium-java

3.5.1

5.代码实现

packagecn.test;importorg.openqa.selenium.WebDriver;importorg.openqa.selenium.firefox.FirefoxDriver;public classFirefoxDemo01 {public static voidmain(String[] args) {

WebDriver driver=null;try{//自定义安装Firefox路径

System.setProperty("webdriver.firefox.bin", "D:\\Firefox59\\App\\Firefox\\firefox.exe");//存放Firefox驱动的路径

System.setProperty("webdriver.gecko.driver", "src/test/resources/geckodriver.exe");

driver= newFirefoxDriver();

driver.get("https://www.baidu.com/");

}catch(Exception e) {

e.printStackTrace();

}finally{

driver.quit();

System.out.println("执行结束,关闭浏览器");

}

}

}

二、java+selenium+IE

1.JDK1.8已安装

2.selenium3.51 依赖包上述已经导入;

3.下载IE驱动地址:https://npm.taobao.org/mirrors/selenium/3.5/

4.代码实现

packagecn.test;importorg.openqa.selenium.WebDriver;importorg.openqa.selenium.ie.InternetExplorerDriver;importorg.openqa.selenium.remote.DesiredCapabilities;public classIEDemo02 {public static voidmain(String[] args) {

WebDriver driver= null;try{//指定IEDriver的存放路径

System.setProperty("webdriver.ie.driver", "src/test/resources/IEDriverServer.exe");//创建Capabilities对象

DesiredCapabilities capabilities = newDesiredCapabilities();//浏览器安全模式保持一致(通过代码忽略设置安全模式保持一致)

capabilities.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS,true);//浏览器缩放比例保持正常(忽略浏览器缩放比例设置)

capabilities.setCapability(InternetExplorerDriver.IGNORE_ZOOM_SETTING, true);

driver= newInternetExplorerDriver(capabilities);

driver.get("https://www.baidu.com");

Thread.sleep(3000);

}catch(Exception e) {

e.printStackTrace();

}finally{//关闭浏览器

driver.quit();

System.out.println("执行结束,关闭IE浏览器");

}

}

}

5.常见报错信息

(1) IE驱动路径未指定,导致找不到IE驱动报错如下:

解决方法如下:

//指定IEDriver的存放路径

System.setProperty("webdriver.ie.driver", "src/test/resources/IEDriverServer.exe");

2.IE 安全模式设置

org.openqa.selenium.SessionNotCreatedException: Unexpected error launching Internet Explorer. Protected Mode settings are not the same for all zones. Enable Protected Mode must be set to the same value (enabled or disabled) forall zones.//百度翻译仅供参考

org.openqa.selenium。启动Internet Explorer SessionNotCreatedException:意想不到的错误。 保护模式设置为所有区域是不一样的。启用保护模式必须设置为相同的值为所有区域(启用或禁用)。

解决方法如下:

//创建Capabilities对象

DesiredCapabilities capabilities = newDesiredCapabilities();//浏览器安全模式保持一致(通过代码忽略设置安全模式保持一致)

capabilities.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS,true);

WebDriver driver= new InternetExplorerDriver(capabilities);

3.浏览器的缩放比例保持正常

org.openqa.selenium.SessionNotCreatedException: Unexpected error launching Internet Explorer. Browser zoom level was set to 111%. It should be set to 100%

//通过360浏览器翻译,仅供参考

org.openqa.selenium。启动Internet Explorer SessionNotCreatedException:意想不到的错误。浏览器缩放级别设置为111%。它应该被设置为100%

解决方法如下:

//浏览器缩放比例保持正常(忽略浏览器缩放比例设置)

capabilities.setCapability(InternetExplorerDriver.IGNORE_ZOOM_SETTING, true);

driver= new InternetExplorerDriver(capabilities);

三、java+selenium+chrome

1.JDK1.8已安装

2.selenium 3.5.1 依赖已经导入

3.下载chrome驱动:https://npm.taobao.org/mirrors/chromedriver

我的chrome是v53. 所以我下载 v2.25驱动

注意:Chrome浏览器版本与ChromeDriver版本映射表查看链接:https://www.cnblogs.com/xiaozhaoboke/p/10107349.html

4.代码实现:

packagecn.test;importorg.openqa.selenium.WebDriver;importorg.openqa.selenium.chrome.ChromeDriver;public classChromeDemo03 {public static void main(String[] args) throwsInterruptedException {//自定义安装chrome路径,默认安装目录不需要配置此项//System.setProperty("webdriver.chrome.bin", "xxx");//指定chromeDriver存放路径

System.setProperty("webdriver.chrome.driver", "src/test/resources/chromedriver.exe");

WebDriver driver= newChromeDriver();

driver.get("https://www.baidu.com");

Thread.sleep(3000);

driver.quit();

System.out.println("关闭浏览器,执行结束!");

}

}

常见报错:

Exception in thread "main" java.lang.IllegalStateException: The path to the driver executable must be set by the webdriver.chrome.driver system property; for more information, see https://github.com/SeleniumHQ/selenium/wiki/ChromeDriver. The latest version can be downloaded fromhttp://chromedriver.storage.googleapis.com/index.html

//解决办法

System.setProperty("webdriver.chrome.driver", "src/test/resources/chromedriver.exe");

四、引入testNG整合三大浏览器代码示例:

1.testng导入依赖

org.testng

testng

6.9.10

test

2.新建一个父类BaseCase来实现浏览器的前期准备工作

packagecn.test;importorg.openqa.selenium.WebDriver;importorg.openqa.selenium.chrome.ChromeDriver;importorg.openqa.selenium.firefox.FirefoxDriver;importorg.openqa.selenium.ie.InternetExplorerDriver;importorg.openqa.selenium.remote.DesiredCapabilities;importorg.testng.annotations.AfterSuite;importorg.testng.annotations.BeforeSuite;importorg.testng.annotations.Parameters;importorg.testng.annotations.Test;public classBaseCase {public static WebDriver driver =null;/**根据提供的浏览器类型初始化驱动

*@parambrowserType*/@Parameters(value= {"browserType"})

@BeforeSuitepublic voidinit(String browserType) {//firefox

if("firefox".equalsIgnoreCase(browserType)) {

System.setProperty("webdriver.firefox.bin", "D:\\Firefox59\\App\\Firefox\\firefox.exe");

System.setProperty("webdriver.gecko.driver", "src/test/resources/geckodriver.exe");

driver= newFirefoxDriver();

}else if("chrome".equalsIgnoreCase(browserType)) {//chrome

System.setProperty("webdriver.chrome.driver", "src/test/resources/chromedriver.exe");

driver= newChromeDriver();

}else if("ie".equalsIgnoreCase(browserType)) {//ie System.setProperty("webdriver.ie.driver", "src/test/resources/IEDriverServer.exe"); DesiredCapabilities capabilities = newDesiredCapabilities(); capabilities.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS,true); capabilities.setCapability(InternetExplorerDriver.IGNORE_ZOOM_SETTING, true);

driver= newInternetExplorerDriver(capabilities);

}

}

@AfterSuitepublic voidover() {

driver.quit();

System.out.println("执行结束,关闭浏览器!");

}

}

3.testng.xml来配置参数,实现浏览器的选择性执行

4.执行用例AutoDemo01,直接继承父类来实现浏览器驱动的初始化

packagecn.test;importorg.openqa.selenium.By;importorg.testng.annotations.Test;importcn.test.BaseCase;public class AutoDemo01 extendsBaseCase{

@Testpublic void test() throwsInterruptedException {

driver.get("https://www.baidu.com");

driver.findElement(By.id("kw")).sendKeys("开始编写自动化脚本来执行测试用例");

Thread.sleep(3000);

}

}

5.执行TestNG Suite

6.学习后总结,不足之处后续补充修正!

java for ie_【Java+selenium3】 Firefox/ IE/ Chrome主流浏览器自动化环境搭建(一)相关推荐

  1. 微信公众号Java开发-笔记01【微信公众号介绍、开发环境搭建】

    学习网址:哔哩哔哩网站 微信公众号开发-Java版 微信公众号Java开发-笔记01[微信公众号介绍.开发环境搭建] 微信公众号Java开发-笔记02[] 微信公众号Java开发-笔记03[] 微信公 ...

  2. Java自动化测试(app自动化环境搭建 31)

    Appium 官网:http://appium.io/ github:https://github.com/appium/appium Appium is an open source test au ...

  3. java服务器要二次编译,ecology项目二次开发环境搭建

    ecology项目二次开发环境搭建 Submitted By Weaver 文档版本控制 文档简要信息: 文档主题(Title) ecology项目二次开发环境搭建 作者(Author) 审批者 (T ...

  4. selenium 3 ie java_【Java+selenium3】 Firefox/ IE/ Chrome主流瀏覽器自動化環境搭建(一)

    一.java+selenium+firefox 1.環境准備:JDK1.8 2.安裝firefox瀏覽器v59 3.下載驅動:https://github.com/mozilla/geckodrive ...

  5. java se 开发web程序_JDiy快速开发WEB之javaSE环境搭建-初级

    大学的时候对web开发很感兴趣,对网页中的动画,对用户注册,对网页中表格填写等等都倍感兴趣.加之又有专业课程编程语言java,因此,对java web产生了浓厚的兴趣,再加之有北京圣思园 风中叶 大师 ...

  6. stm32运行java虚拟机_windows下的基于Eclipse的STM32开发调试环境搭建

    这段时间在玩STM32,但官方库的代码也确实是有点多,记忆力有点不太好了.突然就想起了以前用Eclipse的那个代码提示功能,谷歌了一段时间, (一)安装编译环境 1.下载和安装JAVA虚拟机 因为E ...

  7. APP——java——自动化环境搭建02——个人详细搭建——夜神模拟

    接上文: 安装完成后要进行一下简单修改: (1).打开安装目录,进入到bin目录(比如:D:\Nox\bin)(2).把安装好的Android SDK里的adb.exe文件(比如我的在D:\Andro ...

  8. Elasticsearch 实战1:ES 项目实战(一)Java 集成 Spring Data Elasticsearch(一):简介及环境搭建

    一:前语 1.项目文档 CSDN 专栏:<Elasticsearch 入门和项目实战> 博客路径: https://blog.csdn.net/a767815662/category_91 ...

  9. java开发平板_用Android平板来写代码 - Termux 环境搭建

    之前入了一个洋垃圾 华硕P00I,我对这款平板的第一印象是:屏幕好,电池耐用.如果忽略后压屏的缺点,还是很有性价比的. 除了平时看小说.PDF.PPT.视频,作为一个程序员(还没毕业),想着是否可以更 ...

最新文章

  1. PMCAFF 微课堂 | 赶集、暴风影音这些优质App为什么都在做积分商城?
  2. java概述、安装、配置环境、运行
  3. 【OpenCV学习】矩阵基本操作
  4. centos删除php_Linux CentOS完全卸载PHP
  5. c mysql web开发实例教程_java web 开发入门实例
  6. mysql表单查询_MySQL表单集合查询
  7. c# 计算机ip,C# 获取电脑的IP,网关,MAC,计算机名。。
  8. 浪擎全融合灾备云获大数据安全领域最佳创新奖
  9. HTTP 如何传输大文件
  10. 她,18岁,李飞飞三度公开表扬,高中时NIPS获奖,创造「AI手术教练」
  11. Go语言探索 - 8(原创)
  12. 测试方案和测试计划区别
  13. 华硕a550jk4200公版显卡驱动适配教程
  14. IT项目管理之第5章 项目时间管理习题之选择题汇总
  15. vsftpd命令详解
  16. 自己搭建项目中存在的一些问题
  17. 图片开放接口_免费的美女图片API接口
  18. Excel中如何合并多个工作簿或者合并多个表格(利用方方格子)
  19. 区块链带来的技术创新和变革
  20. 二进制与十进制的相互转换(详解)

热门文章

  1. 互联网上的古玩交易:你敢买吗
  2. iOS判断身份证号码是否正确
  3. CSS 全局实现英文数字斜体而中文汉字正常显示
  4. Ultimate++是一个C++跨平台应用快速开发框架
  5. 数论常用内容——整除
  6. Winograd 方法快速计算卷积
  7. c语言2164错误,美能达C203253353复印机常见错误故障代码介绍
  8. C语言 把字符串s中所有小写字母转换为大写字母,其他字符不变
  9. 5G 2B专网解决方案和关键技术
  10. PowerBuilder9.0 使用xmlhttp组件调用webservice