据报道,凤凰购彩平台app,火狐浏览器将会在未来的Web浏览器版本中添加默认阻止加密挖掘恶意软件脚本。Mozilla产品副总裁Nguyen透露,如果可行的话,用户可能会在Firefox 63版本中启用它们。
如今的互联网中,浏览器可以说是太多太多了,但是大部分都是换壳不换心,基本上主流的浏览器还是火狐,谷歌,IE,safrai这几种比较常见,所以在我们的开发中,有时候需要遇到判断用户正在使用什么浏览器以及使用的版本是多少,并根据返回值,给予一定的提示,下面,我就简单的介绍一种判断用户浏览器的使用情况的代码。
我们已经创建了Selenium maven工程,下去开始真正进入到WebDriver的实战中。
return (Array)borwser
比如当前浏览器类型是ie6.0,那么borwser的值应该是[“ie”,"6","6.0"]
数组的第一个值表示浏览器的类型,第二个值表示浏览器的大版本,第三个值表示浏览器的详细版本号。
var distinguishBrowser= function browserInfo() {
var browser = {
// IE浏览器
msie: false,
// 谷歌浏览器
chrome: false,
// 火狐浏览器
firefox: false,
// opera浏览器
opera: false,
// safrai浏览器
safari: false,
// 正在使用的浏览器的名字
name: 'unknown',
// 正使用浏览器的版本号
version: 0
},
userAgent = window.navigator.userAgent.toLowerCase();
// 使用正则对用户当前浏览器进行判断
if (/(msie|chrome|firefox|opera|netscape)D (d[d.]*)/.test(userAgent)) {
browser[RegExp.$1] = true;
browser.name = RegExp.$1;
browser.version = RegExp.$2;
} else if (/versionD (d[d.]*).*safari/.test(userAgent)) {
browser.safari = true;
browser.name = 'safari';
browser.version = RegExp.$2;
}
return browser;
}
var browserr = browserInfo();
if (mybi.msie) {
console.log(browserr.version);
} else {
console.log(browserr.name ' ' browserr.version);
}
})()
既然WebDriver是用于Web的UI自动化测试,那么测试Web的第一步就是启动浏览器。那WebDriver都支持哪些浏览器呢?
复制代码 代码如下:
以上这篇js判断主流浏览器类型和版本号的简单实现代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
WebDriver 支持主流的浏览器包括IE,Chrome,Firefox,Safari等等,微软Win 10 新推出的Edge浏览器,Selenium 2.47.1 版本开始也得到支持。
我们在“Selenium 家族介绍“ 一节中已经知道WebDriver的工作原理,既每个浏览器都有对应的一个Driver,通过以之对应的Driver来驱动浏览器,那我们在启动浏览器前,得先完成浏览器的配置,下载各个浏览器对应的Driver文件。
/**
* @author sky
*/
var browser = function()
{
//默认为ie6
var _a = ["ie", "6", "6.0"];
var _s = false;
var _ua = navigator.userAgent.toLowerCase();
//检测正则
var _pat = {
opera: /opera.([d.] )/,
ie: /msie ([d.] )/,
ff: /firefox/([d.] )/,
chrome: /chrome/([d.] )/,
safari: /safari/([d.] )/,
mozilla: /rv:([d.] ). gecko/
};
for (var _t in _pat)
{
var _s = _ua.match(_pat[_t]);
if (_s)
{
_a = [_t, parseInt(_s[1]), _s[1]];
break;
}
}
return _a;
}(),
简单演示:上面的代码应该框架中多个方法的一个
[Ctrl A 全选 注:如需引入外部Js需刷新才能执行]
我们可以从 http://selenium-release.storage.googleapis.com/index.html 下载,如果该地址打不开,可以用淘宝的镜像地址:https://npm.taobao.org/mirrors/selenium/。
IEDriverServer 下载时得注意,你用的是什么版本的Selenium
就在对应版本里面找IEDriverServer。
例如我们现在用的是Selenium
3.5.0版本,那么我们就到3.5文件里面去下载对应的IEDriverServer,下载时还得根据自己的系统和版本。例如我是win
64位,那么我可以下载IEDriverServer_x64_3.5.0.zip,下载完成后解压得到最终的IEDriverServer.exe文件。
下载完成后的,我们回到新建好的Senlenium maven项目工程(新建过程:http://www.jianshu.com/p/6ca7bbcdf2dd ),在项目名中我们可以新建个名为drivers的文件夹,再把已经下载好的IEDriverServer.exe文件复制到该新建的drivers文件夹中,最终工程目录结果如下:
工程结构
配置IE,打开IE选项,打开安全标签,如下图,设置红框部分,设置每个区域的 “启动保护模式”,要嘛都勾选,要嘛都不勾选。
IE 设置
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.ie.InternetExplorerDriver;
/**
* Created by 米阳 on 7/9/2017.
*/
public class OpenBrowserTest {
public static void main(String args[]) {
openIE();
}
private static void openIE() {
// 设置系统变量,并设置iedriver的路径为系统属性值
System.setProperty("webdriver.ie.driver", ".\drivers\IEDriverServer.exe");
// 实例化 InternetExplorerDriver
WebDriver driver = new InternetExplorerDriver();
}
}
chromedriver下载时也需要下载到匹配的版本,特别是chrome浏览器和chromedriver的版本需要匹配。那如何查看自己的chrome需要下载哪个版本的chromedriver呢?通常使用最新版的chrome和最新版的chromedriver便可,但如果你并非都是最新版的,那么可以到:https://sites.google.com/a/chromium.org/chromedriver/downloads这里面去查看到你的哪个版本的chromedriver支持你所使用的chrome版本。
当确定好符合你使用的chromedriver版本时,可以到http://chromedriver.storage.googleapis.com/index.html,国内用户也可以到淘宝npm镜像(http://npm.taobao.org/mirrors/chromedriver)去下载对应版本的chromedriver版本。最后将下载下来的chromedriver解压后放于跟IEDriverServer.exe 相同位置,如下图:
chromedriver.png
在刚新建的OpenBrowser_Test类中添加如下方法:
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
/**
* Created by 米阳 on 7/9/2017.
*/
public class OpenBrowserTest {
public static void main(String args[]) {
openChrome();
}
private static void openChrome() {
// 设置系统变量,并设置chromedriver的路径为系统属性值
System.setProperty("webdriver.chrome.driver", ".\drivers\chromedriver.exe");
// 实例化ChromeDriver
WebDriver driver = new ChromeDriver();
}
}
火狐浏览器得分两种情况处理。
public static void main(String args[]) {
openFirefoxDef();
}
private static void openFirefoxDef(){
// 实例化 FirefoxDriver, 启动Firefox
WebDriver driver = new FirefoxDriver();
}
public static void main(String args[]) {
openFireFoxTest();
}
public void openFireFoxTest(){
// 指定firefox 安装路径
System.setProperty("webdriver.firefox.bin","C:\Program Files (x86)\Mozilla Firefox\firefox.exe");
// 启动firefox浏览器
WebDriver driver = new FirefoxDriver();
}
public static void main(String args[]) {
openFirefoxByGeck();
}
private static void openFirefoxByGeck() {
// 设置系统变量,并设置 geckodriver 的路径为系统属性值
System.setProperty("webdriver.gecko.driver", ".\drivers\geckodriver.exe");
// 实例化 FirefoxDriver
WebDriver driver = new FirefoxDriver();
}
win 10 系统微软推出了全新的Edge浏览器,同样上面提到Selenium 2.47.1版本开始开始支持这一浏览器,但是你的Win 10的build版本必须大于或者等于10240版本也就是说你的edge浏览器版本需要是10240版本以上,那如何去查看自己的系统版本,很简单打开控制台,输入ver,显示如下的。
image.png
通常edge版本跟系统版本是一致的,但是如果你真的想查看edge版本,只需要打开edge的设置,便可看到:
image.png
另外值得注意的是从微软官方 https://developer.microsoft.com/en-us/microsoft-edge/platform/documentation/webdriver-commands/ 中我们可以得知,如果你想使用XPath Selector(后面会讲这种重要的页面定位方式)那么你的build版本需要大于等于10586。
Paste_Image.png
如果你的系统满足要求,那恭喜你可以继续往下。
Edge跟IE类似,同样我们需要去下载对应的driver,下载地址:https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/ ,需要注意的是根据你上面所查到的系统版本去下载对应的MicrosoftWebDriver,不然会报错。而且下载有两种一种是MicrosoftWebDriver.exe文件,一种是MicrosoftWebDriver.msi文件,如果你下载到的是.msi文件,那就双击运行按正常软件安装便可。如果你下载到的是MicrosoftWebDriver.exe文件,那就直接剪切放进项目的drivers文件夹中:
我们还是直接在OpenBrowser_Test类中添加如下方法:
public static void main(String args[]) {
openEdge();
}
private static void openEdge() {
// 指定MicrosoftWebDriver路径
System.setProperty("webdriver.edge.driver", ".\drivers\MicrosoftWebDriver.exe");
// 启动 Edge浏览器
WebDriver driver = new EdgeDriver();
}
phantomjs比较特殊的一个浏览器,它实现了一个无界面的webkit浏览器。虽然没有界面,但dom渲染、js运行、网络访问、canvas/svg绘制等功能都很完备,在页面抓取、页面输出、自动化测试等方面有广泛的应用。这个我们后面讲。
最后一个重要补充:
当我们new一个XXXDriver()时,我们启动的是一个全新的浏览器(没有预装插件,没有缓存,没有cookies等等)
本文由凤凰彩票安卓版下载发布于凤凰购彩平台app,转载请注明出处:火狐浏览器将增添阻止恶意加密挖掘软件脚本,