在web开发中,不可避免的一件事是浏览器兼容性问题,你永远无法想象项目正式上线后,坐在电脑前操作这套系统的人用的是什么版本的浏览器,IE(7,8,...),360,Chrome,火狐等,后面几个还好说点,但是IE的这个就是着实让人头疼,尤其是兼容IE8版本,H5的兼容、DOM操作的兼容、js的兼容等,很是让人惊喜!很是意外啊!看着测试反馈的bug邮件,都有一种干掉IE8的冲动!当然也就想想,bug还是要解决的!

对于开发来讲,不仅是实现功能,还需要解决兼容性问题。对于测试提出的bug,第一反应就是看本地,然后开始和测试撕,说我本地如何如何,是测试系统部署的问题,是巴拉巴拉,就差最后动手了!

这权当一笑,现实中这种开发是真的存在,并不是少数人,平心而论,这种盲目自信等同于愚蠢。正确的解决思路是,先检查本地,看是否出现了测试提出的问题,如果本地没问题,让测试进行bug重现,定位是哪种操作引起的错误,再检查本地相应部分代码和重现bug操作,这时候本地没问题,可以问下部署测试环境的同事了,可能是代码没有更上去,那就等下一次的测试环境更新,本着发现问题,分析问题,解决问题的思路进行解决,这样难道不好吗?

这就涉及到本地环境bug重现了,这时你需要一个标准的IE8浏览器,但是大多数人的电脑都是配的IE10、IE11,向下改内核的时候,是没有原装IE8强大的。你不可能一直让测试测你本地的吧?(前提是局域网内可以通信)这时你需要一个虚拟机,可以在本地使用原装IE8的系统。

今天的主角是virtualbox和ievms,可以在本地拥有正版原装的IE8浏览器,virtualbox的安装包只有100来M,ievms稍大,4到5个G,但是整个虚拟机+系统占用的内存大概是10%-15%(我本地是8G内存),还是可以的。

1、virtualbox

目前是Oracle的产品,开源免费,下载地址:https://www.virtualbox.org/wiki/Downloads。将安装包下载到本地后,根据提示,一步一步安装即可。

2、ievms

是微软官方的产品,下载的虚拟系统有90天的试用期,试用期结束后,只需要将安装包再重新导入一次即可,非常方便,没有安装系统那么麻烦(通过镜像文件装过系统的,应该能够体会到这其中的差别)。下载地址:https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/。

步骤一:下载对应的文件

步骤二:打开virtualbox,点击 管理 ,选择 导入虚拟电脑 。

步骤三:选择下载好的文件,直接点击导入即可。

步骤四:点击 启动 ,选择里面的无界面启动,第一次启动选择无界面启动。启动完成后,点击 显示 。

步骤五:为了实现共享粘贴板、互传文件,点击最上面一栏的 设备 ,选择下面的安装增强功能,会弹出virtualbox的安装窗口,按照指示安装一遍即可,这样就能和本机共享文件,实现CV大法了。

步骤六:这里面的IE浏览器清缓存稍微有点不同,打开开发者工具,点击带有一个红叉的地方,即可清理浏览器缓存。

最后,virtualbox的用处是远不止这一点的,如果你还有其他系统的镜像文件,都是可以玩的,Mac、Linux等都是可以尝试的,如果有什么问题,可以下方评论留言,会一一解答的。

文章首发于我的个人公众号:悦乐书。喜欢分享一路上听过的歌,看过的电影,读过的书,敲过的代码,深夜的沉思。期待你的关注!

公众号后台输入关键字“Java学习电子书”,即可获得12本Java学习相关的电子书资源,如果经济能力允许,还请支持图书作者的纸质正版书籍,创作不易。

virtualbox+ievms:还你一个原装IE8的更多相关文章

  1. 快速搭建IE测试环境(Virtualbox+ievms)

    IE下的测试 作为一个有追求的程序员,应该尽可能的远离Windows系统.不论从专业开发者的角度,还是仅仅作为最终用户从使用体验上来说,Windows都可以算是垃圾中的战斗机: 没有shell . 响 ...

  2. 【Android】 给我一个Path,还你一个酷炫动画

    本篇文章已授权微信公众号 hongyangAndroid (鸿洋)独家公布 转载请标明出处: http://blog.csdn.net/zxt0601/article/details/53040506 ...

  3. 【Bootstrap】一个兼容IE8、谷歌等主流浏览器的受众门户式风格页面

    上一次写的<[Bootstrap]一个兼容IE8.谷歌等主流浏览器的受众巨幕式风格页面>(点击打开链接) 部分老一辈的需求可能对这样的后现代的风格并不惬意, 没关系,我们全然能够改变布局 ...

  4. 有了Jenkins,为什么还需要一个独立的部署系统

    需不需要一个独立的部署系统是很多企业用户在构建持续交付流程中经常困惑的一个问题.也经常有用户会问我们,现在已经有Jenkins,它自身提供了丰富的部署插件(如WebSphere部署插件.Tomcat部 ...

  5. WPF/UWP 的 Grid 布局竟然有 Bug,还不止一个!了解 Grid 中那些未定义的布局规则

    只要你用 XAML 写代码,我敢打赌你一定用各种方式使(nuè)用(dài)过 Grid.不知你有没有在此过程中看到过 Grid 那些匪夷所思的布局结果呢? 本文将带你来看看 Grid 布局中的 Bu ...

  6. Oracle VM VirtualBox(一) 快速拷贝一个新的虚拟机

    快速拷贝一个新的虚拟机 一 找到虚拟机vdi文件,复制一份并重命名. 二 修改新虚拟机的UUID 注:不修改创建不了虚拟机,会抛出Oracle VM VirtualBox UUID already e ...

  7. Tampermonkey还你一个干净整洁的上网体验

    作为一个前端开发,平时难免要经常浏览一些博客.技术网站,学习新的技术或者寻找解决方案,可能更多是ctrl+c和ctrl+v(^_^|||),但是目前很多网站的布局以及广告对于我们阅读文章造成了很多的障 ...

  8. 刚发现 CSS 还存在一个命名规范 B.E.M

    Block !误区:这个block并非inline-block里的block,而是将所有东西都划分为一个独立的模块,一个header是block,header里嵌套的搜索框是block,甚至一个ico ...

  9. Big Data(二)分布式文件系统那么多,为什么hadoop还需要一个hdfs文件系统?

    提纲 - 存储模型- 架构设计- 角色功能- 元数据持久化- 安全模式- 副本放置策略- 读写流程- 安全策略 存储模型 - 文件线性按字节切割成块(block),具有offset,id - 文件与文 ...

随机推荐

  1. YARN集群的mapreduce测试(六)

    两张表链接操作(分布式缓存): ----------------------------------假设:其中一张A表,只有20条数据记录(比如group表)另外一张非常大,上亿的记录数量(比如use ...

  2. 关于Android屏幕的参数

    屏幕尺寸信息: 级别 对应Drawable dp尺寸 Layout 文件夹 案例 标注 small drawable-ldpi 426x320 dp layout-small 典型 (240x320 ...

  3. CloudFoundry 之 IBMCloud 项目部署java例子

    步骤一 通过官网注册IBMCloud账号 https://idaas.iam.ibm.com/idaas/mtfim/sps/authsvc?PolicyId=urn:ibm:security:aut ...

  4. .net core部署在iis上

    部署在Windows Server 2008 R2上,一直安装失败,网上找的资料一直无法解决问题,后来找到了官方的文档, 原来是要安装sp1,大概2g左右,同时也要安装Microsoft Visual ...

  5. [PHP] PHP在CLI环境下的错误日志

    1.display_errors = Off;//控制php是否输出错误;在生产环境中输出会泄露敏感信息;建议记录错误而不是将它们发送到STDOUToff :不显示任何错误;stderr :向STDE ...

  6. npm WARN enoent ENOENT: no such file or directory, open 'C:\Users\package.json'

    在使用 npm 命令安装常用的 Node.js web框架模块 express时出现: 解决方法是 在命令行切换到安装nodejs文件下的nodejs\node_modules\npm  后执行npm ...

  7. 【Java每日一题】20170216

    20170215问题解析请点击今日问题下方的“[Java每日一题]20170216”查看(问题解析在公众号首发,公众号ID:weknow619) package Feb2017; public cla ...

  8. Codeforces Round #304 (Div. 2) -----CF546

    A. Soldier and Bananas   A soldier wants to buy w bananas in the shop. He has to pay k dollars for t ...

  9. MongoDB 通过配置文件启动及注册服务

    1.配置mongodb环境变量,配置完成之后就可以直接执行mong.mongod等常用命令,不用每次都到mongodb安装目录bin下去执行: 2.通过命令启动mongo服务 mongod --dbp ...

  10. 折半插入排序算法的C++实现

    折半插入排序思想和直接插入排序类似. 1)找到插入位置: 2)依次后移正确位置及后面的元素. 区别是查找插入位置的方法不同. 折半插入排序使用的折半查找法在一个已经有序的序列中找到查找位置. 注意,折 ...