For Developers‎ > ‎

Testing and infrastructure

Highlighted Child pages

Overview

Chromium development places a high premium on tests, tests, tests, tests, and more tests. In order to maintain a rapid rate of development across multiple platforms and an ever increasing set of features, it is imperative that test suites be updated, maintained, executed, and evolved. The Chromium Buildbots are employed to run these tests 24x7.

Expectations

Developers contributing code are expected to run all tests. This is not typically feasible on a single workstation, so the try server is used.

When contributing code, consider whether your change has enough testing. If it is a new feature or module, it should almost certainly be accompanied by tests.

After committing a change, you should use the Chromium Buildbot to monitor that the automated tests pass with your change. Please be reachable by email or IRC after check-in in case something unexpected happens.

Inventory of Existing Tests

List on the wiki.

Test Development Infrastructure
To assist with building tests, several pieces of infrastructure exist.

Here are some tools you might find useful:
  • chrome/test/automation - Chromium includes a mechanism for driving the browser through automation.  This is primarily used with the UI tests.
  • gtest - Google Test is Chromium's C++ test harness.
  • image_diff - A mechanism for comparing bitmaps.

Inducing a crash

This can be useful to test breakpad:
  • about:crash - will cause a renderer crash.
  • about:inducebrowsercrashforrealz - will cause a browser crash.

Subpages


Subpages (31): View All
Comments