35

我想测试我在所有现代版本的 Internet Explorer(6、7 和 8 beta)中创建的网页,但我主要在 Mac 上工作,通常无法直接访问 PC。

4

14 回答 14

59

更新:微软现在为各种版本的 IE 提供虚拟机映像,可以在所有主要的 OS X 虚拟化平台(VirtualBoxVMWare FusionParallels)上使用。

从以下位置下载适当的图像:https ://developer.microsoft.com/en-us/microsoft-edge/tools/vms/


在基于 Intel 的 Mac 上,您可以在虚拟机中运行 Windows。对于要测试的每个版本的 IE,您都需要一个虚拟机。

以下说明包括免费和合法的虚拟化软件和 Windows 磁盘映像。

  1. 下载一些虚拟机软件。我们将使用的开发人员磁盘映像将与VMWare FusionSun Virtual Box一起使用。VMWare 具有更多功能但售价 80 美元,另一方面,Virtual Box 更基本但对大多数用户免费(有关详细信息,请参阅Virtual Box 许可常见问题解答)。
  2. 下载微软免费提供的 IE 开发者磁盘镜像:http://www.microsoft.com/downloads/...
  3. 使用MacPorts提供的cabextract或源代码(感谢Clinton )提取磁盘映像。
  4. 从http://www.kju-app.org/下载 Q.app并将其放在 /Applications 文件夹中(您需要它来将磁盘映像转换为 VMWare/Virtual Box 可以使用的格式)

此时,该过程取决于您使用的 VM 软件。

虚拟盒子用户

  1. 在您的 Mac 上打开一个 Terminal.app(您可以在 /Applications/Utilities 中找到它)并运行以下命令序列,将 input.vhd 替换您开始的 VHD 文件的名称,并将output.vdi替换为该名称您希望最终的磁盘映像具有:

    /Applications/Q.app/Contents/MacOS/qemu-img convert -O raw -f vpc "input.vhd" temp.bin
    VBoxManage convertdd temp.bin "output.vdi"
    rm temp.bin
    mv "output.vdi" ~/Library/VirtualBox/VDI/
    VBoxManage modifyvdi "output.vdi" compact
    
  2. 启动 Virtual Box 并创建一个新的虚拟机
  3. 选择刚刚创建的新 VDI 文件作为引导硬盘

VMWare 融合用户

  1. 在您的 Mac 上打开一个 Terminal.app(您可以在 /Applications/Utilities 中找到它)并运行以下命令,将input.vhdoutput.vmdk替换为您正在处理的 VHD 文件的名称和您想要的名称您生成的磁盘映像具有:

    /Applications/Q.app/Contents/MacOS/qemu-img convert -O vmdk -f vpc "input.vhd" "output.vmdk"
    mv "output.vmdk" ~/Documents/Virtual\ Machines.localized/
    

    这可能需要一段时间(在我的 2.4GHz Core 2 Duo MacBook w/2Gb RAM 上,每个磁盘映像大约需要 30 分钟)。

  2. 启动 VMWare Fusion 并创建一个新的虚拟机
  3. 在高级磁盘选项中选择“使用和现有磁盘”,找到刚刚创建的VMDK文件
于 2008-09-11T00:53:35.130 回答
8

我推荐三种不同的方法:

基于云的交互式虚拟机

使用类似SauceLabsBrowserStack的东西。您将能够选择一个浏览器,输入一个 url 并使用真正的操作系统和真正的浏览器,并根据您的需要进行测试和交互。这两者还支持设置往返您自己机器的隧道,因此任何本地主机名都可以正常工作。

还有CrossBrowserTestingbrowserling / testling,它们似乎有类似的服务,虽然我自己没有使用过这些。

本地虚拟化

您可以使用VirtualBox(免费和开源,类似于 VMWare 或 Parallels)在您的计算机上创建一个或多个虚拟机。您可能知道也可能不知道,但您不需要为这些虚拟机获取 Microsoft Windows 的正式副本。Microsoft 提供了简化的 Windows 安装的免费 VM 映像,用于测试 Internet Explorer 和 Microsoft Edge(下载)。检查其中一篇文章以启动并运行它:

过去,还有本地 Mac 应用程序(例如ies4osx),或者如果您没有 Windows,则需要 VM 的 Windows 应用程序(例如IETesterMultipleIEs)。缺点是这些仿真通常不如真正的客户端稳定,而且更难调试,因为它们不在浏览器的自然环境中运行。有时会导致在真实浏览器中不会发生的错误,并且可能没有真实浏览器会出现的错误。

云端截图工厂

如果您不需要交互性和/或需要更便宜的解决方案(请注意,这种方法可能并不总是更便宜,在做出假设之前做一些研究)还有在线服务,就像前一个一样,可以访问真正的浏览器/操作系统环境。但与前面相反,不授予对实际机器的交互访问权限,而只是获取屏幕截图。这既有好处也有坏处。缺点是您无法与之交互。然而,好处是其中大多数都可以轻松汇总屏幕截图,因此您不必一个接一个地开始会话并获取屏幕截图。

我用过的一些:

  • BrowserShots(免费并且曾经是我最喜欢的,虽然速度慢让替代品更具吸引力)
  • Adobe BrowserLab(也是免费的,需要 Adob​​e ID。没有 BrowserShots 那么多的选项和覆盖范围,但是:无延迟、即时截图、比较视图以及让截图在给定秒数后而不是立即截取的能力(到测试异步的东西)。
  • CrossBrowserTesting(不是免费的,但也有一个交互环境(见上一个方法)和一个截图工厂,就像你自己的私有“BrowserShots”站点)
于 2012-04-30T17:28:43.473 回答
7

在 Mac 上虚拟化 Windows 后,您还可以尝试使用Mutiple IE安装程序来获得各种风格的 Internet Explorer,而无需创建单独的 VM 实例。

如果您只想查看页面在各种浏览器中如何呈现的简单屏幕截图,您可以尝试免费服务browsershots,或者有许多服务会自动在多个浏览器中测试您的页面。

于 2008-09-11T00:59:35.380 回答
3

Litmus是另一种基于网络的替代方案。

于 2008-09-11T05:11:28.847 回答
2

如果您只想获取屏幕截图,Browsershots是另一种选择。

于 2008-09-11T01:01:28.450 回答
2

VHD 的最新版本(2009 年 1 月)存在问题。VHD 看到有硬件更改并提示输入许可证密钥,最终将用户锁定在外。目前还没有已知的解决方法。

于 2009-09-01T11:55:48.740 回答
1

如果您没有可以在虚拟机中运行的 Windows 副本(VMware 也不是免费的),您可以尝试IEs4Linux。它需要你在你的 Mac 上配置一些开源的东西,但它都是免费的。你至少需要 fink、wine 和 cabextract。有关某些特定命令行方向的信息,请参见上面的链接。没那么难!

于 2008-09-11T01:05:07.380 回答
1

我不时使用 Codeweavers Crossover 产品来执行此操作。

http://www.codeweavers.com/products/cxmac/

这是与虚拟化不同的选择,与某些托管解决方案相比,它为您提供了更多的控制权。也就是说,它基于 WINE,因此您可能会遇到这样做的所有问题和问题。也就是说,对于没有插件的基本测试等,它工作得很好。

我不能 100% 确定是否支持 IE8,您需要检查一下,但它肯定会为您提供对 6 和 7 的原生支持。

于 2008-09-11T07:49:54.677 回答
1

一旦它可用于 Mac,您就可以使用Spoon 浏览器(基于 Web)。

于 2011-01-27T18:06:26.100 回答
1

OSX Daily 解释了如何使用单个终端命令安装 Windows VM(假设您已经安装了 VirtualBox)。总结一下:

即 7:

curl -s https://raw.github.com/xdissent/ievms/master/ievms.sh | IEVMS_VERSIONS="7" bash

即 8:

curl -s https://raw.github.com/xdissent/ievms/master/ievms.sh | IEVMS_VERSIONS="8" bash

即 9:

curl -s https://raw.github.com/xdissent/ievms/master/ievms.sh | IEVMS_VERSIONS="9" bash

所有的IE!:

curl -s https://raw.github.com/xdissent/ievms/master/ievms.sh | bash
于 2012-02-25T02:31:42.117 回答
0

有一个名为ies4osx的 IEs4 Linux 的 OSX 发行版,它在没有任何配置的情况下对我来说运行良好。

于 2008-09-15T12:34:39.483 回答
0

Browsershots 很好,但如果您需要测试功能而不仅仅是整体视觉渲染,那么它就没有用了。

IEs4OSX 和 IEs4Linux 有严重的缺陷。他们对 Flash 和 Silverlight 等插件和扩展没有真正的支持。渲染不精确,而且非常不稳定。为了进行测试,您确实需要在 Windows 上运行的实际 IE 版本,但您不需要专用的盒子。

VirtualBox 上的 IE 图像确实是最好的,也是最简单的方法。

如果有人正在寻找视觉演练,我在这里有一个截屏视频。

于 2009-01-21T04:25:23.420 回答
0

另一个基于 Web 的替代方案(尽管正如 Jeff 所说,对测试功能没有多大用处)是http://www.browsercam.com

于 2009-01-21T17:47:21.257 回答
-1

如果这是一个商业网站(或一个重要的网站,它实际上在 IE 上运行很重要),那么不要走便宜的路线 - 投资一两台 Windows 机器。您的客户会感谢您的。

否则,虚拟化。

于 2008-09-15T19:24:26.907 回答