使用 Test 262 测试浏览器的 JavaScript 兼容性

  • Abel Avram
  • 王瑜珩

2011 年 7 月 3 日

话题:Java.NETRuby测试JavaScript语言 & 开发

最近发布的ECMAScript 262 5.1 修正了之前 5.0 中的一些缺陷,并引入了用来测试 JavaScript 兼容性的Test 262在线测试。

Ecma International是一家致力于 JavaScript(网景) 和 JScript(微软) 标准化的非盈利性组织。ECMA5.0 是此组织于 2009 年 12 月发布的版本,为了提高浏览器之间的一致性,ECMA-262 version 5.1更正了 5.0 版本中引入的缺陷和编辑错误。如需更详细的修订列表,请参考此标准的附录 F。

此标准中最重要的更新要数 ECMA 测试套件。这套测试包含了 10000 多条测试,用来衡量不同浏览器对 JavaScript 语言的支持情况。任何人都可以登陆http://test262.ecmascript.org来运行测试。微软和谷歌分别从IE Testing CenterSputnik贡献了超过 5000 条测试,你可以在此处查看详细列表。标准中还提到将会持续更新这些测试,并于 12 月作为Ecma Technical Report发表首个版本。

微软第一时间在主流浏览器上运行了这些测试。测试结果显示,IE 10 PPB2 通过了 99% 的测试,紧随其后的是 FireFox 5 和 Chrome,Opera 仅仅通过了 65% 的测试,在 JavaScript 实现上仍然落后于标准:

主流浏览器将会在不久的将来通过全部或接近全部测试,Opera 则需努力追赶。

值得注意的是,所有主流浏览器厂商都在向 HTML5 和 ECMAScript 标准靠拢,这对于给使用者提供一致的 Web 体验是非常必要的。现在,竞争者们更多的是围绕浏览器提供服务和建造生态系统,而非像从前的微软和网景那样,试图通过提供互不兼容的浏览器来支配 Web 体验。

查看英文原文Testing a Browser’s JavaScript Compatibility with Test 262

Java.NETRuby测试JavaScript语言 & 开发