让跨浏览器测试 Web 应用程序变得简单

[摘要] 本文主要介绍各种实现跨浏览器测试的技术,既包括比较全面的技术,也包括便捷但不严谨的技术。您必须要面对的一个问题就是,需要根据自己的资源进行选择。

一直以来,“对多个浏览器进行测试” 像是一条难以解开的咒语,因为需要对大量浏览器进行测试。对所有浏览器进行测试(尤其是目前)几乎是不可能的。但是这比您想象中的要容易很多。本文将介绍各种实现跨浏览器测试的技术,既包括比较全面的技术,也包括便捷但不严谨的技术。您必须要面对的一个问题就是,需要根据自己的资源进行选择。

我们都知道(我们也应该知道),需要在多个浏览器和操作系统中测试我们的 Web 应用程序。但这个任务常常是理论上行得通却难于付诸实现。用户可能会使用各种各样的浏览器和操作系统组合来访问您的站点,而要实现一整套完整的跨浏览器测试则可能对您的开发资源造成不小的损耗。

什么?除了IE 还有这么多浏览器?

21 世纪早期的开发人员可能只需要对 Internet Explorer 进行测试,但是这些日子已经一去不复返了。如今,IE 占据了大约 80% 的浏览器访问量。这个数字非常庞大,但并不具有绝对优势 ― 当然,没有公司会将 20% 的用户群拱手与人。

您也不要妄想您的用户使用的浏览器特性可以反映大部分 Internet 用户的习惯。根据国家和兴趣的不同,使用浏览器和操作系统的的习惯也不尽相同。很多站点都针对特定的用户群,这些站点的用户很可能使用的是非 Windows 操作系统和 Internet Explorer 以外的浏览器。例如,访问 developerWorks 站点的访客中,60% 的人使用 Internet Explorer,而 35% 的人使用 Firefox。特别是 Web 开发专区,使用 Firefox 的人数多达 51%,而只有 41% 的访客使用 Internet Explorer。

幸运的是,一些工具和技巧可以使跨浏览器测试变得稍微简单一些 ― 并且开销也更低。在本文中,您将了解各种可用于测试的策略;根据您的需求和资源,您可以找到最适合自己的策略。我将首先介绍一些比较全面的测试技术,如果资源和时间的限制使您无法实现所需的测试,本文还将介绍一些替代方法。

浏览器的小花招

跨多个浏览器和操作系统进行测试,最显而易见、最全面(当然成本也最高)的方法就是对多个浏览器和操作系统进行实际测试。从很多方面讲,浏览器是测试过程中最简单的部分,因为大多数主流浏览器都是免费的。尽管如此,请记住,您将进行测试的不仅仅是几种不同的浏览器,还包括同一 浏览器的各种版本。作为开发人员,您通常都会在自己的计算机中使用最新最好的浏览器版本 ― 这也是出现 “对多个浏览器进行测试” 这一咒语的原因之一 ― 但是,快速查看一下站点的浏览器统计信息,您就会发现,并不是所有用户都像您一样。

目前,同时运行同一种浏览器的多个版本比较困难,因为大多数浏览器的安装过程都覆盖了以前的所有版本。还好,有一些解决方法。对于 Firefox,可以将每个浏览器的可执行文件保存为不同的名字,然后确保首次启动各个版本时启用配置文件管理程序,这样就不会共享这些配置文件。图 1 展示了同时运行的两个 Firefox 浏览器版本 ― 最新的 2.0.0.10 发行版和比较陈旧的 0.7 版本。

图 1. 同时运行的多个 Firefox 版本

对于 Internet Explorer,这个过程要稍微复杂一些。Windows 实际上 不希望您这样做;为了应对它的 “抵制”,您需要对注册表设置进行一些调整。一家小型软件公司 TredoSoft 发布了一款可以安装多个 IE 版本的免费工具,以及能够正确调整注册表键和 DDL 的指令,该公司因此而获得了广泛关注;请查看 参考资料 中的链接(其中还包含我即将介绍到的其他工具和扩展的链接,但是我以及 developerWorks 不会对这些链接进行担保)。

当然,在设置并运行所有这些浏览器之前,需要知道从哪里获得它们!比如,Microsoft? 不会在其网站上提供 Internet Explorer 5 的下载,并且在 Mozilla Foundation 页面您也不一定能获得 Firefox 1.0,这些都是老版本。幸运的是,积极的 Web 用户们为旧的可执行文件创建了档案文件。evolt.org 上由自愿者推动的 Web 社区提供了大量各种风格的旧版浏览器,包括 IE、Opera 等等,但是缺少最新的 Mozilla 发行版;这些可以在诸如 filehippo.com 及类似的文件聚合站点找到,您可以很轻松地找到这些站点。对于 Apple 的 Safari,开发者喜爱的 Multi-Safari 项目将早期的 Safari 版本进行了打包,因此可以方便地实现并行运行(参加 参考资料 中有关内容的链接)。

节省屏幕空间

处理多个浏览器时可能遇到的一个实际问题就是如何避免窗口混乱。虽然,很多时候无法避免,但是您至少可以通过两种方便的工具来稍微整理一下。IE Tab 是一种 Firefox 插件,允许您在一个 Firefox 选项卡中运行一个 Internet Explorer 实例。这并不是模拟 ― 它确实使用了 IE 呈现引擎,这意味着您看到的内容就是您在 Explorer 中实际获得的内容,但是,这也意味着只能在 Windows 中工作。图 2 展示了它的实际效果。

图 2. 使用 IE Tab




免责声明:

本站系本网编辑转载,会尽可能注明出处,但不排除无法注明来源的情况,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与本网联系, 来信: liujun@soft6.com 我们将在收到邮件后第一时间删除内容!

[声明]本站文章版权归原作者所有,内容为作者个人观点,不代表本网站的观点和对其真实性负责,本站拥有对此声明的最终解释权。