Selenium2学习-019-WebUI自动化实战实例-017-获取浏览器类型
Web UI 自动化脚本分布执行过程中有时候需要获取浏览器的相关信息,此文给出了一个简略获取浏览器类型的方法,敬请各位小主们参阅。若有不足之处,敬请大神指正,不胜感激!
闲话少述,上码。
/**
* Get browser type, for execute JavaScript by Selenium
*
* @author Aaron.ffp
* @version V1.0.0: autoSeleniumDemo main.aaron.sele.core SeleniumCore.java getBrowerType, 2015-7-26 12:17:12 Exp $
*
* @return browser type {Chrome|Firefox|InternetExplorer|Safari}
*/
public String getBrowserType(){
String browser = ""; switch (this.webdriver.toString().split(":")[0]) {
case "ChromeDriver":
browser = "Chrome";
break;
case "FirefoxDriver":
browser = "Firefox";
break;
case "InternetExplorerDriver":
browser = "InternetExplorer";
break;
case "SafariDriver":
browser = "Safari";
break;
default:
browser = "Chrome";
break;
} return browser;
}
测试源码如下所示:
/**
* Aaron.ffp Inc.
* Copyright (c) 2004-2015 All Rights Reserved.
*/
package main.aaron.demo.browers; import main.aaron.sele.core.SeleniumCore; import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.ie.InternetExplorerDriver;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.safari.SafariDriver;
import org.testng.annotations.Test; /**
*
* @author Aaron.ffp
* @version V1.0.0: autoSeleniumDemo main.aaron.demo.browers GetBrowersInfomation.java, 2015年7月24日 下午5:05:40 Exp $
*/
public class GetBrowersInfomation extends SeleniumCore{
private String baseUrl = "http://www.yixun.com/"; @Test
public void getChromeInfo() throws InterruptedException{
this.webdriver = new ChromeDriver(); this.webdriver.get(this.baseUrl); System.out.println(this.getBrowserType()); Thread.sleep(5000); this.webdriver.close();
this.webdriver.quit();
} @Test
public void getFirefoxInfo() throws InterruptedException{
System.setProperty("webdriver.firefox.bin", "C:/Program Files (x86)/Mozilla Firefox/firefox.exe"); this.webdriver = new FirefoxDriver(); this.webdriver.get(this.baseUrl); System.out.println(this.getBrowserType()); System.out.println(this.webdriver.toString()); Thread.sleep(5000); this.webdriver.close();
this.webdriver.quit();
} @Test
public void getIExplorerInfo() throws InterruptedException{
DesiredCapabilities capabilities = DesiredCapabilities.internetExplorer(); capabilities.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, true); this.webdriver = new InternetExplorerDriver(); this.webdriver.get(this.baseUrl); System.out.println(this.getBrowserType()); this.webdriver.close();
this.webdriver.quit();
} @Test
public void getSafariInfo() throws InterruptedException{
this.webdriver = new SafariDriver(); this.webdriver.get(this.baseUrl); System.out.println(this.getBrowserType()); System.out.println(this.webdriver.toString()); Thread.sleep(5000); this.webdriver.close();
this.webdriver.quit();
}
}
此方法较为简单,也比较容易理解。同时,我发现在脚本运行过程中,若是 UI 自动化测试脚本报错,报错信息中除了相应的错误信息之外,也会包含有 driver版本、selenium版本、工作机、浏览器 等的详细信息,若是想要获取更详细的信息,以在后续的日志生成中记录响应的信息,则可以通过人为制造异常,从异常中获取相应需要的信息也可。(此种获取方式后续更新,敬请期待)
感兴趣的小主们,可以尝试一下以上异常捕获信息的方法。若是各位大神有更好的方法,劳烦告知,非常感谢!
至此,WebUI 自动化功能测试脚本第 017-获取浏览器类型 顺利完结,希望此文能够给初学 Selenium 的您一份参考。
最后,非常感谢亲的驻足,希望此文能对亲有所帮助。热烈欢迎亲一起探讨,共同进步。非常感谢! ^_^
Selenium2学习-019-WebUI自动化实战实例-017-获取浏览器类型的更多相关文章
- Selenium2学习-005-WebUI自动化实战实例-003-三种浏览器(Chrome、Firefox、IE)启动脚本源代码
此文主要通过 三种浏览器(Chrome.Firefox.IE)启动脚本 功能,进行 Selenium2 三种浏览器启动方法的实战实例讲解.文中所附源代码于 2015-01-18 20:33 亲测通过, ...
- Selenium2学习-023-WebUI自动化实战实例-021-获取浏览器显示区域大小,通过 WebDriver 截图功能
之前的博文 020-JavaScript 在 Selenium 自动化中的应用实例之二(获取浏览器显示区域大小) 简述了通过 JavaScript 获取浏览器显示区域大小,此文将简述另一种获取浏览器显 ...
- Selenium2学习-021-WebUI自动化实战实例-019-设置浏览器窗口位置大小
前文简略讲述了如何获取浏览器窗口的位置和大小,此文讲述如何通过 webdriver 设置浏览器窗口的位置和大小. 直接上码了...... /** * Set browser size for expe ...
- Selenium2学习-020-WebUI自动化实战实例-018-获取浏览器窗口位置大小
在 UI 自动化测试过程中,每个机器上浏览器的默认大小.默认位置不尽相同,需要截图的时候,页面元素可能显示不完全,因而我们需要知道浏览器的宽度,或者直接在启动浏览器时,设置浏览器的宽度或位置(此文暂不 ...
- Selenium2学习-001-Selenium2 WebUI自动化Java开发 Windows 环境配置
此文主要介绍 Selenium2 WebUI自动化Java开发 Windows 环境配置,供各位亲们参考,若有不足之处,敬请各位大神指正,非常感谢! 所需软件列表如下所示: 所属分类 具体名称 备注 ...
- Selenium2学习-027-WebUI自动化实战实例-025-JavaScript 在 Selenium 自动化中的应用实例之三(页面滚屏,模拟鼠标拖动滚动条)
日常的 Web UI 自动化测试过程中,get 或 navigate 到指定的页面后,若想截图的元素或者指定区域范围不在浏览器的显示区域内,则通过截屏则无法获取相应的信息,反而浪费了无畏的图片服务器资 ...
- Selenium2学习-007-WebUI自动化实战实例-005-解决 Firefox 版本不兼容:org.openqa.selenium.WebDriverException: Failed to connect to binary FirefoxBinary
此文主要讲述 Java 运行 Selenium 脚本时,因 Friefox 浏览器版本与 selenium-server-standalone-x.xx.x.jar 不兼容引起的 org.openqa ...
- Selenium2学习-035-WebUI自动化实战实例-033-页面快照截图应用之三 -- 区域截图(专业版)
之前有写过两篇博文讲述了 WebUI 自动化测试脚本中常用的截图方法,敬请参阅如下所示链接: 浏览器显示区域截图 浏览器指定区域截图 那么当需要截取的区域不在浏览器显示窗口范围之内时,之前的方法显然无 ...
- Selenium2学习-018-WebUI自动化实战实例-016-自动化脚本编写过程中的登录验证码问题
日常的 Web 网站开发的过程中,为提升登录安全或防止用户通过脚本进行黄牛操作(宇宙最贵铁皮天朝魔都的机动车牌照竞拍中),很多网站在登录的时候,添加了验证码验证,而且验证码的实现越来越复杂,对其进行脚 ...
随机推荐
- 彻底卸载oracle数据库
有时候因为各种各样的原因,我们不得不重装Oracle,但按照一般的操作,很多朋友用了oracle的删除,然后,你会发现重新安装时,点了下一步安装界面就消失了.事实证明,万能的重启也是解决不了问题的.往 ...
- OpenCV Open Camera 打开摄像头
这是一个用OpenCV2.4.10打开摄像头的一个例子,参见代码如下: #include <iostream> #include <stdio.h> #include < ...
- app.config中的connectionstring
<connectionStrings> <add name="wz" connectionString="server=www.junjv.com ...
- java语法基础思维导图
- 6. Configure Compute services
Controller Node: 1. sudo apt-get install nova-api nova-cert nova-conductor nova-consoleauth nova-nov ...
- DS实验题 地鼠安家
★实验任务 fd是一个公认的美丽校园.一天,fd来了一群地鼠,编号为1到n,他们希望在这里定居.现在先由第一只地鼠往下打一个单位的距离,并且在那里安家.对于每一个已经安家的地鼠,如果他左下或右下没有邻 ...
- java 时间戳和PHP时间戳 的转换
java 时间戳和PHP时间戳 的转换 PHPJava 总结一下java 时间戳和PHP时间戳 的转换问题: 由于精度不同,导致长度不一致,直接转换错误. JAVA时间戳长度是13位,如:12948 ...
- SQL--查询相同字段的数据
select city, statefrom state_county_citywhere city in (select city from state_county_city group by c ...
- 20145235 学号 《Java程序设计》第2周学习总结
教材学习内容总结 本周学习教材第三章,本章主要讲述了java语言中的一些基础语法,java是个支持面向对象的程序语言,但在正式进入面向对象支持语法的探讨前,对于类型.变量.运算符.流程控制等,这些各种 ...
- ubuntu日志清理
由于ubuntu日志文件syslog 和 kern.log 时刻在增长,一会儿就使得根目录文件夹不够用了,需使用如下命令清理 sudo -i输入密码echo > /var/log/syslog ...