Auto-tools/Projects/peptest
Contents
Overview
Peptest is an automated testing framework designed to test whether or not the browser's UI thread remains responsive while performing a variety of actions. Tests are simple JavaScript files which can optionally import Mozmill's driver to manipulate the user interface in an automated fashion.
See the MDN page for more information, including how to use peptest and write tests for it.
Peptest statistics for try, mozilla-inbound, and mozilla-central are available at http://mrcote.info/peptest/
Further Work
Automatic reports
bug 737886 Set up reporting when significant deviations occur in buildbot's peptest results. Since we can't develop a simple pass/fail result, developers will have to rely on these reports to determine when responsiveness has gotten worse (or better).
Telemetry histograms
bug 740462 Capturing telemetry information would be useful in diagnosing causes of responsiveness. Results would be available after running a test, and by clicking through on the stats UI.
Integration with SPS
bug 706847 For each function wrapped in a performAction() call, we should enable the profiler, so we can tell where each action spent its time. We can use SPS to this end.
Mozmill e10s
Note: this will likely be put on hold indefinitely until the status of e10s becomes more clear
Mozmill doesn't use MessageManager when it interacts with content. This means that it will not work correctly with Electrolysis builds (which is mostly the entire point of Peptests). Mozmill will need to be refactored to use MessageManager and also to stop using the gBrowser object which doesn't exist in mobile Firefox.
Related Bugs
New bugs should be filed under Testing / Peptest. Here are the open bugs.