QA/Firefox3.5/Video And Audio TestPlan: Difference between revisions
< QA | Firefox3.5
Jump to navigation
Jump to search
No edit summary |
|||
Line 16: | Line 16: | ||
== What MUST be Tested == | == What MUST be Tested == | ||
=== Functional Tests === | |||
{| class="standard-table" | {| class="standard-table" | ||
|- | |- | ||
Line 27: | Line 28: | ||
| ? | | ? | ||
|- | |- | ||
| | | Change the controls to something of our own creation | ||
| ? | |||
|- | |||
| Use Video to animate objects and place as a background to content | |||
| ? | |||
|- | |||
| test dragging video to a new window and that it doesn't stop playing (via tab drag) | |||
| ? | |||
|- | |||
| Test that it continues to play (or doesn't play - current behavior is to continue) when you switch to a new tab. | |||
| ? | |||
|- | |||
| Test accessibility of the video/audio controls | |||
| ? | |||
| Test that the controls work properly (litmus? gristmill?) | |||
| ? | |||
|- | |||
| Test automatically removing controls from javascript - would this be a bug? | |||
| ? | |||
|- | |||
| Use javascript events to override the volume control set by the user (should not be able to do this, I think, considering how much we hate the ads on tv that do this) | |||
| ? | |||
|- | |||
| Test that playback of both formats stops on closing the tab | |||
| ? | |||
|- | |||
| Test that reload of page causes both to restart | |||
| ? | |||
|- | |||
| Test that back/forward work as expected (video back to beginning) | |||
| ? | |||
|- | |||
| Test that Session restore should restore the original state of the video, not the mid-point where it was when you crashed. (I think). | |||
| ? | |||
|- | |||
| Test attaching javascript event listeners to the controls themselves. They should not really be able to take over a control, for example, you could move the control every time the mouse hovered over it making it impossible to stop the video | |||
| ? | |||
|- | |||
| Test playing a large video that must be buffered. Ensure the buffering works properly | |||
| ? | | ? | ||
|- | |- | ||
| | | Ensure the poster setting works properly, that seek offsets can be used well. | ||
| ? | | ? | ||
|- | |- | ||
| | | Ensure that save page as functionality works and downloads the video/audio as well as the HTML | ||
| ? | | ? | ||
|- | |||
|} | |||
=== Mime and Lower level concerns === | |||
{| class="standard-table" | |||
|- | |||
| class="header"|Test Idea | |||
| class="header"|Status | |||
|- | |- | ||
| Test mimetypes, and test that we handle them by default when they are detected, if we want to do that | | Test mimetypes, and test that we handle them by default when they are detected, if we want to do that | ||
Line 56: | Line 103: | ||
| Test for any relevant events - video stop/start/resume/reset etc | | Test for any relevant events - video stop/start/resume/reset etc | ||
| ? | | ? | ||
|} | |||
=== CSS Considerations === | |||
{| class="standard-table" | |||
|- | |- | ||
| class="header"|Test Idea | |||
| class="header"|Status | |||
|- | |- | ||
| ensure videos obey their space directives for the content they are embedded within | | ensure videos obey their space directives for the content they are embedded within | ||
* make video bigger than space (in div, in table, in frame/span) | |||
* make video smaller than space | |||
* make video smaller than normal size | |||
* make video much larger than normal size -can you size video outside of content | |||
* have the area surrounding a video be determined by an inherited CSS string that is changed after the page loads and autoplay begins such that the new size is too small for the video | |||
* do above case and just keep the same size, and ensure the page changes and reflow happens but video doesn't restart | |||
| ? | |||
|- | |||
| Can we style the page differently based on video states of play or pause or stop? | |||
| ? | |||
|- | |||
| What happens if you put video inside content editable? can you drag the video around? | |||
| ? | |||
|- | |||
| What about inside of an SVG section? (note: I don't think this is possible) | |||
| ? | | ? | ||
|- | |- | ||
|} | |} | ||
== NEEDED for Automated testing == | == NEEDED for Automated testing == | ||
Line 74: | Line 138: | ||
* Ensure that we can automate interacting with the video by doing various JS things and then checking the states and attributes of the video both the constants and the actual attribute states. (in order to play to a certain time, for example) | * Ensure that we can automate interacting with the video by doing various JS things and then checking the states and attributes of the video both the constants and the actual attribute states. (in order to play to a certain time, for example) | ||
= Discovered Bugs = | = Discovered Bugs = |
Revision as of 05:59, 21 August 2008
NOTES: Things to help us once we start writing
- Something to include in Litmus/Gristmill: bug 448630
- <Video> and <Audio> Test Plan
Overview
Video and audio HTML 5 suport has landed on trunk for the 3.1 release. It implements the WHATWG specification for these tags. So, far, only the ogg-theora codec support has landed. However, the tests below must be tested with each codec supported unless otherwise noted.
Test Strategy
I am breaking these into three basic blocks of testing:
- What must be done to ensure good coverage of the feature
- What should be done to test around the area of the feature and its interoperability with other HTML content
- What might be done in a wonderful perfect world i.e. less important stuff that might get timeboxed)
What MUST be Tested
Functional Tests
Test Idea | Status | ||
Analyze the unit tests to ensure they test all default values of the attributes | ? | ||
Test autoplay toggle to determine if the controls appear and that the controls appear properly | ? | ||
Change the controls to something of our own creation | ? | ||
Use Video to animate objects and place as a background to content | ? | ||
test dragging video to a new window and that it doesn't stop playing (via tab drag) | ? | ||
Test that it continues to play (or doesn't play - current behavior is to continue) when you switch to a new tab. | ? | ||
Test accessibility of the video/audio controls | ? | Test that the controls work properly (litmus? gristmill?) | ? |
Test automatically removing controls from javascript - would this be a bug? | ? | ||
Use javascript events to override the volume control set by the user (should not be able to do this, I think, considering how much we hate the ads on tv that do this) | ? | ||
Test that playback of both formats stops on closing the tab | ? | ||
Test that reload of page causes both to restart | ? | ||
Test that back/forward work as expected (video back to beginning) | ? | ||
Test that Session restore should restore the original state of the video, not the mid-point where it was when you crashed. (I think). | ? | ||
Test attaching javascript event listeners to the controls themselves. They should not really be able to take over a control, for example, you could move the control every time the mouse hovered over it making it impossible to stop the video | ? | ||
Test playing a large video that must be buffered. Ensure the buffering works properly | ? | ||
Ensure the poster setting works properly, that seek offsets can be used well. | ? | ||
Ensure that save page as functionality works and downloads the video/audio as well as the HTML | ? |
Mime and Lower level concerns
Test Idea | Status |
Test mimetypes, and test that we handle them by default when they are detected, if we want to do that | ? |
Try to test if we can unsync the video and audio | ? |
Change the framerate, ensure video playback changes | ? |
Give an invalid mime type for the provided file (when the file is a codec we support | ? |
Give a valid mime type when the file isn't a codec we support | ? |
Give an incorrect,but supported, mime type for a file that is a supported codec | ? |
Test for any relevant events - video stop/start/resume/reset etc | ? |
CSS Considerations
Test Idea | Status |
ensure videos obey their space directives for the content they are embedded within
|
? |
Can we style the page differently based on video states of play or pause or stop? | ? |
What happens if you put video inside content editable? can you drag the video around? | ? |
What about inside of an SVG section? (note: I don't think this is possible) | ? |
NEEDED for Automated testing
- Ensure that you can use play and pause to cause video to get to a certain state and then figure out if it worked by comparing to a static image of the video at that time.
- what tests should be done using the various backend frameworks? How do you test that theora works on all platforms etc
- Ensure that we can automate interacting with the video by doing various JS things and then checking the states and attributes of the video both the constants and the actual attribute states. (in order to play to a certain time, for example)
Discovered Bugs
- chaning width crops controls and can no longer properly control the video any more
- should there be a context click menu for video control?
Schedule Scoping
Estimate amount of time it will take to complete feature (Consider nightly builds, security reviews, bugs turnaround time)
References
Include notes, links, specs, relevant bugs