Download - Mozilla: Under the Hood
![Page 1: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/1.jpg)
MozillaUnder the Hood
![Page 2: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/2.jpg)
Presented byMarcia Knous
Team Mozilla QA
![Page 3: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/3.jpg)
Brief History of Mozilla
![Page 4: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/4.jpg)
Mozilla is...
A global effort to promote choice and innovation on the Internet
An open source project
![Page 5: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/5.jpg)
Software for the people, by the people
![Page 6: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/6.jpg)
NY Times two page adDecember 16, 2004
![Page 7: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/7.jpg)
What fuels us?
![Page 8: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/8.jpg)
Community‣ 2008 Mozilla Summit
![Page 9: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/9.jpg)
We build on top of each other
![Page 10: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/10.jpg)
A Good Day at Mozilla :)
![Page 11: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/11.jpg)
The tree is green...
![Page 12: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/12.jpg)
...So what do we test?
![Page 13: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/13.jpg)
Everything!
• Firefox Release builds
• Including Firefox Localizations
• Firefox Nightly Builds
• Firefox Mobile (Fennec)
• Firefox web properties
• Thunderbird
![Page 14: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/14.jpg)
What do we focus on?
•Basic functionality
•Standards Compliance
•Performance
![Page 15: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/15.jpg)
How do we do this?•Automated Tests
•Manual Tests
![Page 16: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/16.jpg)
The Mozilla Platform
![Page 17: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/17.jpg)
Automated Tests
![Page 18: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/18.jpg)
Unit Tests
xpcshell
Compiled code
![Page 19: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/19.jpg)
XPC Shell‣Anything available to the XPCOM layer (through scriptable interfaces) can be tested with xpcshell.‣Limitations: Can’t easily open windows, test chrome, work with HTML parser or the DOM‣
![Page 20: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/20.jpg)
Graphical & Interactive Tests
Mochitest
Chrome Tests
Reftest
Crash Tests
![Page 21: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/21.jpg)
Content Mochitest
Highlights
Runs tests in a full browser environment with chrome privileges
Can simulate user input (keyboard/mouse)
Good for testing things such as password manager and popup blocking
![Page 22: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/22.jpg)
Mochichrome
Highlights
Elevated privileges allow access to XPCOM components and services
Uses simple JS function calls to aid in correctness
Useful for testing UI components such as:
Download Manager/Addons Manager
![Page 23: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/23.jpg)
Browser Chrome Tests
Tests are written as JS files
Uses simple JS function calls to aid in correctness
Useful for testing Browser UI features
![Page 24: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/24.jpg)
Crash Tests
Based on the reftest framework
The test works by loading the file and completing without crashing or asserting
![Page 25: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/25.jpg)
Reftests➡Layout Engine Visual Tests➡Results are reported as Pass, Fail or Unexpected
![Page 26: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/26.jpg)
Desired Result of the test
![Page 27: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/27.jpg)
Taloshttp://graphs.mozilla.org
![Page 28: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/28.jpg)
Leak Tests
![Page 29: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/29.jpg)
Topsite Testing
![Page 30: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/30.jpg)
Other Tests➡Fuzz Tests➡Accessibility➡JS Tests
![Page 31: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/31.jpg)
Mozmill
Functional UI testing for Mozilla Applications.
![Page 32: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/32.jpg)
![Page 33: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/33.jpg)
Manual Tests
![Page 34: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/34.jpg)
Litmus
‣Open 24/7 for your testing enjoyment
‣Test cases written by Mozilla QA & community
![Page 35: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/35.jpg)
Litmus Full Functional Tests
![Page 36: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/36.jpg)
Litmus Basic Functional Tests
![Page 37: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/37.jpg)
Litmus Smoketests
![Page 38: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/38.jpg)
Manual Debugging ToolsThe Error Console is your friend!
![Page 39: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/39.jpg)
Even with all these tests...
![Page 40: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/40.jpg)
There is no magic bullet
![Page 41: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/41.jpg)
The bug that forced FF 3 RC2
![Page 42: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/42.jpg)
There is humor in testing software...
![Page 43: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/43.jpg)
Keynote software errorCommon sight while preparing this presentation, but
at least I can send feedback...
![Page 44: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/44.jpg)
Who tests?Fosdem, 2009
![Page 45: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/45.jpg)
The Community
Nightly Testers - ~ 10K
Betatesters - ~ 3 Million
Web Developers
Mozilla QA Team - 18
![Page 46: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/46.jpg)
The QA CompanionUseful add on that allows the community to test
![Page 47: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/47.jpg)
![Page 48: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/48.jpg)
An Example of Code Coverage
![Page 49: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/49.jpg)
How do we get feedback?
![Page 50: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/50.jpg)
Community Members file bugs and help triage
The Mozilla “kitchen”
Bugzilla
![Page 51: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/51.jpg)
Hendrix
Feedback link is postioned prominently on Release Notes and first run page
Blocker bug for Firefox 3 was found through this feedback mechanism
![Page 52: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/52.jpg)
First run page before we changed the version to Firefox 3.5...But nonetheless a good example of a the direct feedback links (Bugzilla, Hendrix) on first run page
![Page 53: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/53.jpg)
Tweets regarding issues with Firefox are reported and monitored
![Page 54: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/54.jpg)
BreakpadCrash reporting tool
![Page 55: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/55.jpg)
MozillaZine
Firefox Forum Discussions
At one time was the premier Mozilla news site
![Page 56: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/56.jpg)
Newsgroups - moz.dev.quality
![Page 57: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/57.jpg)
QMO - The QA PortalCentral repository for project info and documents
![Page 58: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/58.jpg)
reporter.mozilla.org
Linked directly from the Help menu
Allows you to report a broken website right from the UI
![Page 59: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/59.jpg)
So who reviews all this feedback?
Sometimes tough to separate the “noise” from the real issues
![Page 60: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/60.jpg)
We give back...
![Page 61: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/61.jpg)
Songbird
Blackbird
Instantbird
Seamonkey
KompoZer
Nokia’s Internet Tablet
Wyzo
Miro
Flock
Celtx
Komodo
![Page 62: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/62.jpg)
Projects/Technologies
Projects
Firefox
Camino
Bugzilla
Fennec
Lightning and Sunbird
Seamonkey
Thunderbird
Technologies
Gecko
XULRunner
Mozilla Labs
http://labs.mozilla.com/projects/
![Page 63: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/63.jpg)
The end...questions?
![Page 64: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/64.jpg)
Resources/Background material
The History of Mozilla: https://library.mozilla.org/The_History_of_Mozilla
QMO: http://quality.mozilla.org/
Litmus: https://litmus.mozilla.org/
Mozmill: http://code.google.com/p/mozmill/
Developer info: https://developer.mozilla.org/
Mozilla Labs: http://labs.mozilla.com/
Tinderbox for Firefox 3.5: http://tinderbox.mozilla.org/showbuilds.cgi?tree=Firefox3.5
![Page 65: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/65.jpg)
Resources/Background material
Get the Firefox Beta: http://www.mozilla.com/en-US/firefox/all-beta.html
QA Companion: https://addons.mozilla.org/en-US/firefox/addon/5428
Hendrix: http://hendrix.mozilla.org/
Mozilla support: http://support.mozilla.com/en-US/kb/
Mozilla Digital Memory Bank: http://chnm.gmu.edu/mozilla-digital-memory-bank/
Marcia’s Firefox Robot Wars Video: http://www.youtube.com/watch?v=OnZClPMoYEY
![Page 66: Mozilla: Under the Hood](https://reader036.vdocuments.mx/reader036/viewer/2022062702/55496bd9b4c905dd558b4e89/html5/thumbnails/66.jpg)
Jaguar Inline 6 Car Engine Photo courtesy of dave_7. Licensed under a Creative Commons license - http://www.flickr.com/photos/daveseven/250993044/
Bullet photo courtesy of JinglyJon. Licensed under a Creative Commons license : http://www.flickr.com/photos/jinglyjon/180600454/
Photo credits