badboy录制兼容性有趣测试
badboy录制默认是启动IE浏览器,使用badboy录制脚本时,遇到测试系统对IE浏览器不兼容时,就需要考虑换浏览器,修改为其他浏览器(如firefox、chrome)录制,只需要设置该浏览器为默认浏览器即可,启动badboy,录制地址栏浏览器的图标会自动变为默认浏览器的图标。
遇到问题:启动badboy录制(录制浏览器为IE10),页面提示如下:

根据页面提示的URL,找到了应用包代码的路径,确认应用程序代码是没问题的,手工在IE10浏览器访问系统,系统对浏览器不兼容,页面跳转到浏览器提醒页面。如图:

下面我手工分别试了firefox、chrome、360极速访问系统地址,OK,系统可以正常打开登录页面,没有兼容性问题。
找到程序代码的判断浏览器兼容性common.js文件,如果浏览器不兼容,就会跳转到上面浏览器提醒页面,程序代码:
//判断 浏览器版本
function browser(){
if (!!window.ActiveXObject || "ActiveXObject" in window){
if(navigator.userAgent.indexOf("MSIE 6.0")>0 || navigator.userAgent.indexOf("MSIE 7.0")>0 || navigator.userAgent.indexOf("MSIE 8.0")>0){
//alert("1111您的浏览器版本过低,请升级到IE11(包含)以上版本!");
broser_url();
}
if(navigator.userAgent.indexOf("MSIE 9.0")>0 && !window.innerWidth){//这里是重点,你懂的
//alert("2222您的浏览器版本过低,请升级到IE11(包含)以上版本!");
broser_url();
}
if(navigator.userAgent.indexOf("MSIE 9.0")>0 || navigator.userAgent.indexOf("MSIE 10.0")>0){
//alert("3333您的浏览器版本过低,请升级到IE11(包含)以上版本!");
broser_url();
}
}else if((window.navigator.mimeTypes[40] || !window.navigator.mimeTypes.length)){
//alert(is360se());
//alert("360浏览器!");
}else if(navigator.userAgent.indexOf("Chrome") != -1) {
//alert("Chrome");
}else if(navigator.userAgent.indexOf("Safari") != -1) {
//alert("Safari");
}else if(navigator.userAgent.indexOf("QQBrowser") != -1) {
//alert("QQBrowser");
}
else if(navigator.userAgent.indexOf("Firefox") != -1) {
//alert("Firefox");
}
else{
//alert('无法识别的浏览器。');
broser_url();
}
}
测试一:badboy录制时使用firefox浏览器进行录制
依然会提示“脚本错误”,如图:

为了找到启动录制时访问系统,是执行了哪行程序代码,在common.js文件加了alert()提示,再次启动录制访问系统,如图:


Badboy录制时居然还是IE10浏览器(这可能是背后的原因啊!),如图:

测试二:badboy录制时使用chrome浏览器进行录制
再次尝试,设置chrome浏览器为默认浏览器,这样badboy录制时就会启动chrome浏览器录制。在浏览器上手工访问测试地址,测试一下。

但结果让人出乎意料,badboy录制时仍然认为是IE10浏览器,如图:

测试三:badboy录制时使用360浏览器进行录制
再尝试,设置360浏览器为默认浏览器,并手工试一下common.js判断的有效性。

启动badboy使用360浏览器进行录制,结果还是一样,如图:

结论:badboy录制浏览器始终默认是IE浏览器,至于原因,可能是本机系统有关,也可能是badboy录制底层默认就是IE内核,而badboy录制的浏览器兼容性问题(设置默认浏览器),只是方便用户在录制脚本时能顺便进行录制。
badboy录制兼容性有趣测试的更多相关文章
- JMeter-使用Badboy录制Web测试脚本
JMeter是纯Java编写的软件功能和性.能测试工具,其录制脚本过于笨拙和复杂.而Badboy是用C++开发的动态应用测试工具,其拥有强大的屏幕录制和回放功能,同时提供图形结果分析功能,刚好弥补了J ...
- 测试工具之Jmeter(使用badboy录制脚本)
前面使用badboy工具时说过,badboy是可以录制Jmeter的测试脚本,这样省去了自己设计测试用例的麻烦 Jmeter主要是一个性能测试工具,不光在web和http,现在扩展很多功能都可以在Jm ...
- 【jmeter】jMeter使用Badboy录制Web测试脚本
JMeter 是纯Java编写的软件功能和性.能测试工具,其录制脚本过于笨拙和复杂.而Badboy是用C++开发的动态应用测试工具,其拥有强大的屏幕录制和回放 功能,同时提供图形结果分析功能,刚好弥补 ...
- 使用badboy录制脚本 结合Jmeter一起测试。
1.badboy介绍 Badboy是一款不错的Web自动化测试工具,如果你将它用于非商业用途,或者用于商业用途安装Badboy 的机器数量不超过5台,你是不需要为它支付任何费用的.Badboy提供了将 ...
- Jmeter脚本录制方法(一)——分别使用Badboy录制和Jmeter自带的代理服务器录制
Jmeter录制方式分三种,分别是:使用Badboy录制.Jmeter自带的代理服务器录制和手工录制,今天先介绍前两种录制方法. Badboy录制 Badboy是用C++开发的动态应用测试工具, 其拥 ...
- 使用Badboy录制Web脚本 JMeter运行jmx脚本
1.下载JDK 1.1 官网地址:https://www.oracle.com/technetwork/java/javase/downloads/index.html 在官网下载最新版本的JDK 1 ...
- Badboy录制Jmter脚本
提纲 1.特性和用途 2.下载和安装 3.界面介绍 4.录制脚本(注意:badboy默认是打开就开始录制,需要在step双击后进行取消默认设置) 5.添加断言(参数化设置,注意:badboy默认只运行 ...
- Jmeter脚本录制方法(一)分别使用Badboy录制和Jmeter自带的代理服务器录制
Jmeter录制方式分三种,分别是:使用Badboy录制.Jmeter自带的代理服务器录制和手工录制,今天先介绍前两种录制方法. Badboy录制 Badboy是用C++开发的动态应用测试工具, 其拥 ...
- 使用JMeter录制Web应用测试脚本
环境 操作系统:Windows 7 工具:JMeter.Badboy 1. 使用代理录制Web性能测试脚本 使用代理录制脚本来创建测试计划无疑是一个简便的方法,代理所要完成的工作就是录制发往服务器的请 ...
随机推荐
- IDEA第二章----配置git、tomcat(热部署)、database,让你的项目跑起来
第一节:下载git客户端,整合idea 由于博主公司用的git版本管理,所以本系列都是基于git版本工具的,当然SVN与git配置类似.git同样支持安装版和解压版,支持各种操作系统,我这里下载的是W ...
- 在ASP dot Net Core MVC中用Controllers调用你的Asp dotnet Core Web API 实现CRUD到远程数据库中,构建你的分布式应用(附Git地址)
本文所有的东西都是在dot Net Core 1.1环境+VS2017保证测试通过. 本文接着上次文章接着写的,不了解上篇文章的可能看着有点吃力.我尽量让大家都能看懂.这是上篇文章的连接http:// ...
- css代码实现
纯 CSS 实现下面我们探讨下,使用纯 CSS 的方式能否实现. hover 伪类实现 使用 hover 伪类,在鼠标悬停在按钮上面时,控制动画样式的暂停. 关键代码如下: <div class ...
- python——模块
一.导入模块 Python之所以应用越来越广泛,在一定程度上也依赖于其为程序员提供了大量的模块以供使用,如果想要使用模块,则需要导入.导入模块有一下几种方法: 1 import module 2 fr ...
- ubuntu实用命令--软件管理
近期重新拿起linux的书看了下,整理了一下linux的命令. ubuntu预装了APT和dpkg ,“APT”是 “Advanced Package Tool”的简写,“dpkg ”是“Debian ...
- Charles抓取https请求详解
大家好,我是TT,互联网测试行业多年,没有牛逼的背景,也没有什么可炫耀的,唯独比他人更努力,在职场打拼.遇到过的坑,走过的弯路,愿意与大家分享,分享自己的经验,少走弯路.首发于个人公众号[测试架构师] ...
- iOS开发tips-UINavigationBar的切换
概述 在iOS系统中,如果控制器是以push方式进行管理的话,那么事实上多个控制器是共享的同一个导航栏.当然iOS系统的设计无可厚非,但是国内的应用经常会遇到很多个性的设计,就比如说A push到 B ...
- ST-4
1.(49-7)使用下面的方法printPrimes()完成后面的问题: (a)为printPrimes()方法画控制流图. (b)考虑测试用例t1=(n=3)和t2=(n=5).即使这些测试用例游历 ...
- javascript的面向对象详解
每次说到javascript到面向对象,总感觉自己心里懂,但是却不知道该怎么说,这就是似懂非懂到表现,于是乎,每次一说,就要到处去查找资料,零零碎碎到看了一些,感觉有懂了,但是过段时间,好像又不知道是 ...
- jenkins部署
第一步:官网下载jenkins:http://Jenkins-ci.org/ 第二步:安装jdk:(参考jdk安装)http://www.cnblogs.com/tanghuang/p/5805514 ...