QA/Firefox3.5/CSS Transform Testplan: Difference between revisions
< QA | Firefox3.5
Jump to navigation
Jump to search
Samuelsidler (talk | contribs) |
|||
(2 intermediate revisions by 2 users not shown) | |||
Line 41: | Line 41: | ||
* Test handing these transformations off to DOM Threads | * Test handing these transformations off to DOM Threads | ||
* Test with transparent images and backgrounds | * Test with transparent images and backgrounds | ||
* Test transforming elements inside of tables | |||
= Schedule Scoping = | = Schedule Scoping = | ||
* Writing these tests will take about 3 days, because verifying that the transform is correct and coming up with the proper reference image will be a bit of a pain. | * Writing these tests will take about 3 days, because verifying that the transform is correct and coming up with the proper reference image will be a bit of a pain. | ||
Line 49: | Line 49: | ||
* The webkit browsers have a good share of these implemented (Google Chrome & safari) | * The webkit browsers have a good share of these implemented (Google Chrome & safari) | ||
* [https://wiki.mozilla.org/Firefox3.1/CSS_Transforms_Security_Review Security Review] | * [https://wiki.mozilla.org/Firefox3.1/CSS_Transforms_Security_Review Security Review] | ||
* https://bugzilla.mozilla.org/show_bug.cgi?id=435293 |
Latest revision as of 03:51, 24 March 2009
- CSS Transform Testplan
Overview
We are implementing 2d transforms for content in web pages. I don't think we are doing 3d transforms yet.
Test Strategy
Things we should do
- There are quite a few reftests being applied with the patch. Need to talk with Keith to see if these are enough and if there are more sanity "does it work" reftest patches needed. --> Done
- Test that multiple applied transforms equate to a sequentially applied transform
- Test invalid measurements
- Test invalid inputs
- Unneeded: we didn't implement these.
Test DOM interfaces that this exposes - it doesn't seem the reftests do that. - Test this with other embedded content and be sure the other content is (and is not) transformed as specified.
- Unneeded: it doesn't affect other elements - doesn't cause reflow
Test with various types of :fixed, :relative elements on the page
Functional Cases Needed
- test matrix() and matrix3d()
- test translate3d -- not supported, shouldn't crash
- test scale transforms
- test scalex
- test scaley
- test skew, skewx, skewy
- todo: is transform-style handled?
- todo: is perspective transformation handled
- todo: is perspective-origin handled
- todo: is backface-visibility handled?
Negative Tests
- Add a test for each of the above with picked values that lean toward impossible, nAn, or tiny values.
- Attempt huge transformation matrices that keep propogating (may not be reftestable)
- Attempt giant transformations of lots of content, just to see if the system can be crashed.
- test invalid measurement units insure that the transform is ignored.
- move some of the tests into reftest, especially test for none as a value.
Things we'd like to do
- Test applying these tranforms to SVG elements, as per the spec, see if it works
- Test how many of these transforms you can apply to one element
- Test handing these transformations off to DOM Threads
- Test with transparent images and backgrounds
- Test transforming elements inside of tables
Schedule Scoping
- Writing these tests will take about 3 days, because verifying that the transform is correct and coming up with the proper reference image will be a bit of a pain.
References
- The webkit browsers have a good share of these implemented (Google Chrome & safari)
- Security Review
- https://bugzilla.mozilla.org/show_bug.cgi?id=435293