随着微软每年左右推出一个新版本的 IE,Google Chrome、Firefox 和 Safari 等竞争对手也在做同样的事情,经常会出现关于 Web 应用程序是否支持特定浏览器的问题。
关于确定要测试的浏览器,已经存在一个问题(哪些技术可用于确定要测试的浏览器?)。但是,根据我的经验,我发现表示层的呈现对于测试浏览器支持至关重要,并且在幕后发生的代码很少对浏览器有任何依赖(如果确实如此,在我看来成为设计问题)。
由于答案可能因应用程序和设计而异,您将如何确定什么会“触发”浏览器检查?
随着微软每年左右推出一个新版本的 IE,Google Chrome、Firefox 和 Safari 等竞争对手也在做同样的事情,经常会出现关于 Web 应用程序是否支持特定浏览器的问题。
关于确定要测试的浏览器,已经存在一个问题(哪些技术可用于确定要测试的浏览器?)。但是,根据我的经验,我发现表示层的呈现对于测试浏览器支持至关重要,并且在幕后发生的代码很少对浏览器有任何依赖(如果确实如此,在我看来成为设计问题)。
由于答案可能因应用程序和设计而异,您将如何确定什么会“触发”浏览器检查?
为了决定我们需要测试什么,我们需要了解什么可能会破坏。当前批次的网络浏览器有一组众所周知的错误和差异。如果您了解这些差异,则可以在很长一段时间内了解为什么页面存在 javascript 问题或在不同浏览器中呈现不同的原因。Internet Explorer 有大量的 CSS 布局问题和渲染错误。完整列表可在此处获得。
浏览器之间或不同平台上同一浏览器的不同版本中会出现一些细微的渲染差异。
下图显示了 2008 年我第一次进行比较时,Microsoft 主页的 Internet Explorer 5.5(幻影)和 Internet Explorer 6 之间的渲染差异。
可以清楚地看到,IE5.5中的主要页面元素明显向左移动了。您还可以看到导航栏根本不工作,并且 IE 5.5 不支持 silverlight。
这些类型的渲染差异通常会出现在主要版本的浏览器中。当一个浏览器存在跨平台时,通常会在所有平台上使用相同的渲染引擎,因此同一浏览器的相同版本通常会在其支持的所有平台上渲染相同的结果。这减少了在多个平台上测试相同版本的浏览器的需要,但是如果配置已经可用,则建议对浏览器跨平台进行简单的完整性检查。
您可以通过 Acid 2 测试直观地看到这些错误是如何表现出来的。这是一个旨在查看浏览器是否可以正确呈现 CSS 的测试。大多数网站通常首先在一个主要浏览器(市场领导者)上进行测试,因此,没有这些问题的浏览器现在会出现布局问题。这在运行浏览器 Acid 2 测试的不同浏览器的比较中清楚地显示在下面。
如果您的网站是在 Mac 上开发的,您几乎可以保证 Internet Explorer 会出现问题。如果您的网站是在 Windows 7 上开发的,则相反,Safari 和 IE6 可能会被破坏。
此外,网站在每个浏览器中的外观都不会相同。这根本不可能。这是 microsoft.com 在 lynx 中的外观。
具有讽刺意味的是,这正是搜索引擎看待世界的方式。
由于特定浏览器不支持 javascript,浏览器兼容性检查的关键领域是缺少功能。它还应该考虑 GUI 问题,如未对齐。
某些浏览器可能不支持软件为最终用户提供所需功能所需的 Javascript 或 Active-X 控件。请参阅以下维基百科文章http://en.wikipedia.org/wiki/Comparison_of_web_browsers#JavaScript_support
例如:
1.) 使用 javascript 验证日期输入字段是否存在不正确的日期格式。如果浏览器不支持javascript,该软件将允许客户输入无效日期,这是一个缺陷
2.) 国家下拉菜单使用客户端 javascript 按字母顺序排序。同样的规则适用于一个。如果不支持,用户会发现很难从下拉列表中选择一个国家
文本、图形和颜色在不同浏览器上的显示可能不同。
1.) 网页上的控件错位,这让客户感到沮丧
2.) 网页在移动浏览器上看起来杂乱无章
浏览器在不同的域中表现不同:
您在测试时必须查看的关键特性在很大程度上取决于您的应用程序以及其中使用了哪些特性。