Test262 Support for V8

Google

Extending the Official Test Suite for JavaScript

View project

Bocoup worked with the Google Chrome V8 JavaScript engine team over the course of 20 months between 2015-2016 to extend Ecma Test262, the official test suite for the JavaScript language, to implement tests and build smarter tooling for to improve feature compliance across an increasingly large landscape of runtimes for JavaScript engines in web browsers. We continue to remain engaged with the V8 team for long term support and ongoing improvements.

We also continue to lead the Test262 project. Read more about our work on Test262 here.

Challenge

Google wanted to make sure the official test suite for the JavaScript language was up-to-date with the latest standard version, which was set to be published in a few months. Although the language was approaching finalization, it was still undergoing revision with only partial implementation. Extending coverage for a moving target would involve careful planning, thorough specification review, engagement with specification authors, collaboration with language implementors, extensive documentation, and (of course) a whole lot of test writing.

Solution

We collaborated with the Google Chrome V8 JavaScript engine team to assess the existing level of coverage, prioritize features, migrate test from the internal V8 test suite, extend the official test harness, restructure test organization, and (of course) write a whole lot of new tests providing a comprehensive coverage for the ES2015 and ES2016 versions of the standard. We continue to work on ES2017 and even ES2018+ features as part of our ongoing work with the V8 team.

Impact

The new tests help developers to identify errors and inconsistencies in all major JavaScript engines (including Chromium's V8, Mozilla's SpiderMonkey, Webkit's JSC and Microsoft's ChakraCore, for example). In the future, these tests will serve to prevent inconsistencies before features are released. Testing the new language features correctly required re-designing the test format. These changes in testing format facilitate new tests to encourage sustainable development. In evangelizing our efforts, we increased awareness around the open standards process and encouraged independent contributions to the Test262 project from a global community of developers.

Contact Us

We'd love to hear from you. Get in touch!

Mail

P.O. Box 961436
Boston, MA 02196