Most of my posts are related to getting the unittests to run on Fennec, there is not much communication about how we are tracking and getting the tests to be green (zero failures). Simple explanation, up until now there was no plan.
Last December, I went through every failure and documented what I thought was the problem. I created a little web tool to see the differences and track my bugs. Of course this is a static tool and was a real pain to update with new bugs and tests.
Now it is August and many new failures are occuring and the old failures are not fixed. I am going to outline an approach to get us to ZERO failures by the end of the year. In order to be successful, we need to reduce the variables as much as possible. This means that we will run Fennec on desktop linux builds in tinderbox per checkin instead of on Maemo! This sets us up for getting green Tinderboxes in this environment vs a device (I suspect we will be 90%+ passing when run on a device).
Actions to take:
- Start with XPCShell tests first (then do Crashtest, Reftest, Mochitest, Chrome one at a time) and for each failure do the next steps
- Reproduce failure (twice)
- Reduce testcase (if possible)
- File bug/update existing bug, add bug # to a master tracking bug
- When done with a specific test harness (XPCShell in this case), meet with the devs to prioritize bugs and get everybody on the same page
This sounds simple but could take a long time. The benefit of tackling the smaller test harnesses first is that we can see progress (list of bugs, green) faster and start keeping those harnesses green.
What this does not do:
- Help us track new failures
- Get green tinderboxes on Maemo and WinMo
- Resolve remote web server related issues
- Fix issues when running tests one at a time
Stay tuned for an update when we get our first batch of bugs filed for XPCShell.