[webkit-dev] Using ref tests for repaint bugs

Simon Fraser simon.fraser at apple.com
Thu May 24 16:07:35 PDT 2012


On May 24, 2012, at 3:59 PM, Andrei Bucur wrote:

> No, I need a way to force a paint operation, similar to what layoutTestController.display() achieves, but without tracking the paint rectangles.
> 
> Does anyone you find value in adding an optional parameter to display (or create another method on LTC) that disables paint rectangle tracking.
> 
> The main advantage for such a change would be in extending the ref tests power to also cover repaint tests (at least a part of them), thus making pixel tests less necessary. Repaint bugs appear usually when the  layout changes but the old pixels are incorrectly invalidated. By making the reference HTML directly identical to the test document after the bug triggering changes have been applied, it is pretty certain that the output pixels for the reference file will not contain the repaint artifacts (there's no repaint operation involved). When running such a test with a client that has the bug, it will fail because the test file output will have artifacts and the reference output will not. On the other hand, using a client with the repaint bug fixed, the pixels output for the test and reference files should be identical.
> 
> Thoughts?

I think this will be too fragile. It relies on the fact that a subsequent paint won't obscure the repaint bug that you're trying to detect.

I'm much rather we work towards detecting repaint bugs via dumping the list of repaint rectangles. I don't think every test has to be a ref test.

Simon



More information about the webkit-dev mailing list