再谈浏览器兼容性测试

简介:

今天跟大家聊一个老生常谈的话题:浏览器兼容性测试。
  测试国内网站的同学是不是已经非常头疼了,因为面对的浏览器除了国际大牌如IE, Chrome, Firefox, Opera, Safari, 还有国内诸多屌丝级的浏览器如:360安全浏览器,360极速浏览器,360影视浏览器(360碉堡了,会不会再搞出一些购物浏览器,买火车票浏览器啊?)搜狗双核浏览器,猎豹,淘宝,世界之窗,百度浏览器,还没完呢,听说过枫树浏览器吗?没听过的赶紧去科普科普吧!另外我今天还被不知不觉安装了云帆影视浏览器。再想想这些浏览器有多少个版本?还有运行在Windows和MAC系统上的浏览器也是有些差异的。曾经在兰亭时就出现过在MAC/Chrome上有Windows/Chrome上没有的bug。这么多要覆盖的浏览器你若没晕说明身体和心理素质好,反正我是晕了!
  可是我们需要考虑浏览器,版本,系统三个因子去组合吗?答案当然是否定的。
  一般针对普通用户的网站都会嵌入GA统计代码,现在google被和谐了,可以换成百度统计,但是它们都可以跟踪到用户行为,其中一项就是浏览器访问占比,清清楚楚告诉你每个浏览器占比,每个版本占比,所谓好钢用在刀刃上,有个这项数据后,就应该清楚的知道我们的工作重点在哪里,根据二八原则,我们也需要投入大部分精力在占比排名在80%前的上面,投入少量精力在占比比较小的浏览器上,我们之前的经验能保证正常功能能使用,一些小样式就可以容忍了,这种情况多是IE6,7,不过我一直都没有想明白,对于IE6,国外发达国家都已经绝迹了,为啥国人不能使用一些更高级的浏览器呢?回到正题,其实如果发布时间紧急,实在没有时间来做这么多浏览器覆盖的时候,就再分析一下国内诸多浏览器使用的内核以及他们的区别是什么, 如果是Chrome的内核,也许可以跟Chrome一起来测试,如果是IE的话,就跟IE一起来测试,当然不同的浏览器在渲染原理上必然还是有一些差异的,不过为了赶工,还是要做取舍的。对于IE的话,的确有必要再唠叨几句,基本在IE8及以后版本,基本都是标准模式,IE6,7的怪癖模式需要格外注意,如果你的网站在这两个版本上占比还不小的话,的确需要好好测试下这两个版本,IE9及之后的版本以及较新的Chrome,Firefox基本上都不会出问题。
  而对于企业级用户的网站或者有专人在维护用户的平台,就好办多了,我们可以保证几个重要的浏览器重要版本的兼容性,然后让公司的运营或者销售人员与用户做好沟通,对哪几个浏览器支持比较好,建议他们使用我们支持的浏览器,因为有沟通渠道,是不是就好很多了。
  测试国外用户特别是欧美的网站,就大有福气了,他们早就不用IE6,7了,而且国外的本土浏览器也并没有像国内这么大放异彩,需要覆盖的就少很多了。就像以前在兰亭的时候,根据GA统计数据,用户使用量大的基本都是比较新的浏览器版本,而且Chrome,Firefox占比比较大。
  对于浏览器兼容性测试,你是不是想问有没有什么工具来帮助我们做?是有,不过像IETester也只是支持IE,而且需要人工检查兼容性问题, BrowserShots也只是做线上测试工具,并不支持测试环境。不过我之前用过一个Chrome的插件叫浏览器兼容性检测工具,可以在内网测试,会自动监测网页的设计是否满足对应浏览器及版本的规范,不满足的话就会详细提示出来,不过有些过于专业性了,更适合开发人员查看,测试人员可以推荐给开发人员使用,这样在开发阶段就规避掉一些兼容性问题岂不是更好。

最新内容请见作者的GitHub页:http://qaseven.github.io/

相关文章
|
7月前
|
Web App开发 Java 测试技术
《手把手教你》系列基础篇之(四)-java+ selenium自动化测试- 启动三大浏览器(下)基于Maven(详细教程)
【2月更文挑战第13天】《手把手教你》系列基础篇之(四)-java+ selenium自动化测试- 启动三大浏览器(下)基于Maven(详细教程) 上一篇文章,宏哥已经在搭建的java项目环境中实践了,今天就在基于maven项目的环境中给小伙伴们 或者童鞋们演示一下。
148 1
|
7月前
|
Web App开发 Java 测试技术
《手把手教你》系列基础篇之(三)-java+ selenium自动化测试- 启动三大浏览器(上)(详细教程)
【2月更文挑战第12天】《手把手教你》系列基础篇之(三)-java+ selenium自动化测试- 启动三大浏览器(上)(详细教程) 前边宏哥已经将环境搭建好了,今天就在Java项目搭建环境中简单地实践一下: 启动三大浏览器。按市场份额来说,全球前三大浏览器是:IE.Firefox.Chrome。因此宏哥这里主要介绍一下如何启动这三大浏览器即可,其他浏览器类似的方法,照猫画虎就可以了。
134 1
|
1月前
|
运维 Prometheus 监控
如何在测试环境中保持操作系统、浏览器版本和服务器配置的稳定性和一致性?
如何在测试环境中保持操作系统、浏览器版本和服务器配置的稳定性和一致性?
|
3月前
|
Web App开发 JavaScript 前端开发
添加浮动按钮点击滚动到网页底部的纯JavaScript演示代码 IE9、11,Maxthon 1.6.7,Firefox30、31,360极速浏览器7.5.3.308下测试正常
添加浮动按钮点击滚动到网页底部的纯JavaScript演示代码 IE9、11,Maxthon 1.6.7,Firefox30、31,360极速浏览器7.5.3.308下测试正常
|
1月前
|
机器学习/深度学习 自然语言处理 前端开发
前端神经网络入门:Brain.js - 详细介绍和对比不同的实现 - CNN、RNN、DNN、FFNN -无需准备环境打开浏览器即可测试运行-支持WebGPU加速
本文介绍了如何使用 JavaScript 神经网络库 **Brain.js** 实现不同类型的神经网络,包括前馈神经网络(FFNN)、深度神经网络(DNN)和循环神经网络(RNN)。通过简单的示例和代码,帮助前端开发者快速入门并理解神经网络的基本概念。文章还对比了各类神经网络的特点和适用场景,并简要介绍了卷积神经网络(CNN)的替代方案。
114 1
|
1月前
|
Web App开发 定位技术 iOS开发
Playwright 是一个强大的工具,用于在各种浏览器上测试应用,并模拟真实设备如手机和平板。通过配置 `playwright.devices`,可以轻松模拟不同设备的用户代理、屏幕尺寸、视口等特性。此外,Playwright 还支持模拟地理位置、区域设置、时区、权限(如通知)和配色方案,使测试更加全面和真实。例如,可以在配置文件中设置全局的区域设置和时区,然后在特定测试中进行覆盖。同时,还可以动态更改地理位置和媒体类型,以适应不同的测试需求。
Playwright 是一个强大的工具,用于在各种浏览器上测试应用,并模拟真实设备如手机和平板。通过配置 `playwright.devices`,可以轻松模拟不同设备的用户代理、屏幕尺寸、视口等特性。此外,Playwright 还支持模拟地理位置、区域设置、时区、权限(如通知)和配色方案,使测试更加全面和真实。例如,可以在配置文件中设置全局的区域设置和时区,然后在特定测试中进行覆盖。同时,还可以动态更改地理位置和媒体类型,以适应不同的测试需求。
64 1
|
2月前
|
Web App开发 缓存 Linux
高效Selenium测试技巧:轻松控制已开启的浏览器
【10月更文挑战第13天】在进行Selenium测试时,通常会启动新浏览器实例,但有时需要控制已开启的浏览器,以节省时间并更真实地模拟用户行为。这可通过设置Chrome为可远程控制并使用`Remote WebDriver`连接实现。需在启动Chrome时添加`--remote-debugging-port`参数,并通过Python脚本中的`webdriver.Remote`连接至指定端口。此外,还可利用会话ID(Session ID)重新连接浏览器,提高测试灵活性。需要注意浏览器版本兼容性及元素定位稳定性等问题,确保测试准确性和一致性。
388 1
|
5月前
|
Web App开发 XML Java
《手把手教你》系列基础篇(九十六)-java+ selenium自动化测试-框架之设计篇-跨浏览器(详解教程)
【7月更文挑战第14天】这篇教程介绍了如何使用Java和Selenium构建一个支持跨浏览器测试的自动化测试框架。设计的核心是通过读取配置文件来切换不同浏览器执行测试用例。配置文件中定义了浏览器类型(如Firefox、Chrome)和测试服务器的URL。代码包括一个`BrowserEngine`类,它初始化配置数据,根据配置启动指定的浏览器,并提供关闭浏览器的方法。测试脚本`TestLaunchBrowser`使用`BrowserEngine`来启动浏览器并执行测试。整个框架允许在不同浏览器上运行相同的测试,以确保兼容性和一致性。
109 3
|
5月前
|
存储 域名解析 缓存
函数计算产品使用问题之怎么使用浏览器测试函数
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
6月前
|
Web App开发 IDE Java
自动化测试谷歌浏览器和其驱动版本差不多却还是报错The chromedriver version (121.0.6167.184) detected in PATH at DPythonchromed
自动化测试谷歌浏览器和其驱动版本差不多却还是报错The chromedriver version (121.0.6167.184) detected in PATH at DPythonchromed
141 2
下一篇
DataWorks