Automated testing is an increasingly significant and important part of MailNews development. It allows reviewers to quickly pick up regressions in patches and helps developers to think about different cases.

This page and its sub-pages describe (and link to) the available test mechanisms within MailNews, and provide supporting information for developers and testers.

Functional testing

xpcshell-tests and make check

These are core test harnesses to which MailNews adds its own tests. These tests are run against almost every changeset that gets committed to the Thunderbird and SeaMonkey code bases.

Testing frameworks

The AsyncTestUtils Extended Framework supports:

Performance testing

Mail leak and bloat tests

These tests start up Thunderbird or SeaMonkey and record any leaks found, as well as the total memory requirement. Although currently based on simple tests, these are useful for determining if new leaks have been introduced.

For more information, see Leak and Bloat Tests.

MailNews facilities

MailNews provides some additional facilities to aid the testing of MailNews protocols.