首页  >  问答  >  正文

javascript - 大家有没有比较好的全浏览器兼容调试方案?说说你们目前的调试思路也行

在公司做需求的时候,应为客户或市场的需求不得不兼容低版本浏览器,例如IE8,大家在平常工作中是怎么处理兼容问题的呢?

说下我目前的解决方案吧,同时也希望大家能提出自己的解决方案。

PC端(H5没什么经验,有好的调试方案也可以说下):

FirefoxChrome本身问题倒不大,而且调试起来比较方便,问题一般不大,主要是IE

Windows系统

  1. 使用低版本IE,win10可能不支持,另外自带的调试工具,用起来真的反人类,毕竟是好几年前的产物了。有时候调请求,还不如用fiddler

  2. 浏览器使用IE11(使用内置开发者工具的仿真选项可以模拟IE7-11各浏览器,总体来说还可以,因为本身的开发者工具比较新,调试起来还比较方便,但是会有部分css和js问题在仿真模式和实际的效果不一致)

  3. 使用IETest,说实在我觉得这工具真心不好用,调试工具和1一样比较老,看一看样式问题还行,调试js错误什么的比较累。

类Linux系统

这个IE的话,可能还要跑个虚拟机,然后到了虚拟机有碰到了和上面Window系统一样的问题。

共有云端测试

这个有bowserstack(支持本地调试,需要安装chrome插件)等等,这个收费有点贵,大概29$/month,貌似还是一个人的。支持大部分浏览器,但是速度也比较慢,不过也算一种还行的方案。

私有云端测试

这个之前貌似去一个讲座的时候,有人说过,在是私有云的话,第一速度快,第二好定制点。

目前个人比较希望用的应该是私有云测试,但是目前不知道有没有比较好的开源方案。

欢迎大家提出意见,一起探讨,谢谢大家~

習慣沉默習慣沉默2734 天前657

全部回复(1)我来回复

  • PHP中文网

    PHP中文网2017-05-19 10:15:53

    个人觉得上面的思路不对,是应该在明确了兼容性需求后,进行开发的时候就要考虑到这些兼容性问题。而不是正常的都做好了,才来测试、发现、调试解决这些问题。

    如果确定需要兼容IE8,那么在开发的时候就应该要处理好一些常见的问题。比如:

    • IE8的window对象下没有JOSN,需要使用JSON库。

    • IE8下较多情况不会重绘,需要单独处理。

    • IE8下事件绑定的兼容写法。

    • IE89不开控制台时没有console对象,所以最终的代码中不能存在console调试代码。

    • IE8基本不支持css3,IE9仅仅部分支持 一些样式的降级处理方案。

    • 。。。

    开发前就明确兼容性需求,开发时就处理好相应的兼容性问题。最终产品完成后,只用正常的在相应浏览器上奏一遍功能性测试即可。兼容性上基本不会存在问题。

    我在的公司产品全面要兼容IE8,部分还要到IE7,一直使用的是这种形式。对于一些不能实现的效果,直接沟通告诉客户,低版本浏览器下只保障实现功能,样式兼容处理,不能达到和高版本浏览器相同的效果。

    无论什么测试工具,发现问题后最终还是要解决的,最好的处理方式不应该是从源头上就处理吗?如你所说,那低版本的IE,调试要么不能,要么反人类。

    工具的话推荐一个:阿里的 F2ETEST,部署比较麻烦,但是功能不错,也挺好用。

    最后,其实公司有一定积累的话,你会发现,要兼容的其实不只是IE,chrome和Firefox也都存在一些问题的,只是相对少了很多而已。

    回复
    0
  • 取消回复