SlideShare ist ein Scribd-Unternehmen logo
1 von 66
Downloaden Sie, um offline zu lesen
Mozilla
Under the Hood
Presented by
  Marcia Knous
 Team Mozilla QA
Brief History of Mozilla
Mozilla is...


A global effort to
promote choice and
innovation on the
Internet
An open source project
Software for
the people,
by the people
NY Times two page ad
     December 16, 2004
What fuels us?
Community
‣   2008 Mozilla Summit
We build on top of each other
A Good Day at Mozilla :)
The tree is green...
...So what do we test?
Everything!

• Firefox Release builds
  • Including Firefox Localizations
• Firefox Nightly Builds
• Firefox Mobile (Fennec)
• Firefox web properties
• Thunderbird
What do we focus on?




   •Basic functionality
   •Standards Compliance
   •Performance
How do we
do this?
•Automated Tests
•Manual Tests
The Mozilla Platform
Automated
  Tests
Unit Tests



 xpcshell
 Compiled code
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
‣
Graphical & Interactive Tests

Mochitest
Chrome Tests
Reftest
Crash Tests
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
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
Browser Chrome Tests


Tests are written as JS files
Uses simple JS function calls to aid in correctness
Useful for testing Browser UI features
Crash Tests

Based on the reftest
framework
The test works by
loading the file and
completing without
crashing or asserting
Reftests
➡Layout Engine Visual Tests
➡Results are reported as Pass, Fail or Unexpected
Desired Result of the test
Talos
http://graphs.mozilla.org
Leak Tests
Topsite Testing
Other Tests
 ➡Fuzz Tests
 ➡Accessibility
 ➡JS Tests
Mozmill


Functional UI
testing for Mozilla
Applications.
Manual Tests
Litmus

‣Open 24/7 for your
testing enjoyment
‣Test cases written by
Mozilla QA & community
Litmus Full Functional Tests
Litmus Basic Functional Tests
Litmus Smoketests
Manual Debugging Tools
   The Error Console is your friend!
Even with all these tests...
There is no magic bullet
The bug that forced FF 3 RC2
There is humor in testing
       software...
Keynote software error
Common sight while preparing this presentation, but
        at least I can send feedback...
Who tests?
 Fosdem, 2009
The Community

  Nightly Testers - ~ 10K
  Betatesters - ~ 3 Million
  Web Developers
  Mozilla QA Team - 18
The QA
Companion
Useful add on that
allows the community
to test
An Example of Code Coverage
How do we get feedback?
Bugzilla


Community Members file
bugs and help triage
The Mozilla “kitchen”
Hendrix


Feedback link is postioned prominently on Release Notes
and first run page
Blocker bug for Firefox 3 was found through this feedback
mechanism
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
Twitter


Tweets regarding issues
with Firefox are reported
and monitored
Breakpad
Crash reporting tool
MozillaZine


Firefox Forum
Discussions
At one time was the
premier Mozilla news
site
Newsgroups - moz.dev.quality
QMO - The QA Portal
Central repository for project info and documents
reporter.mozilla.org


 Linked directly from the
 Help menu
  Allows you to report a
 broken website right
 from the UI
So who reviews all this
             feedback?


Sometimes tough to
separate the “noise”
from the real issues
We give back...
Songbird                  Miro
Blackbird                 Flock
Instantbird               Celtx
Seamonkey                 Komodo
KompoZer
Nokia’s Internet Tablet
Wyzo
Projects/Technologies
Projects                   Technologies

   Firefox                    Gecko

   Camino                     XULRunner

   Bugzilla                Mozilla Labs

   Fennec                     http://labs.mozilla.com/projects/

   Lightning and Sunbird

   Seamonkey

   Thunderbird
The end...questions?
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
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
Photo credits
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/

Weitere ähnliche Inhalte

Was ist angesagt?

[ENG] OHM2013 - The Quest for the Client-Side Elixir Against Zombie Browsers -
[ENG] OHM2013 - The Quest for the Client-Side Elixir Against Zombie Browsers - [ENG] OHM2013 - The Quest for the Client-Side Elixir Against Zombie Browsers -
[ENG] OHM2013 - The Quest for the Client-Side Elixir Against Zombie Browsers -
Zoltan Balazs
 
How Firefox Works
How Firefox WorksHow Firefox Works
How Firefox Works
s1170166
 

Was ist angesagt? (10)

Strategies for securing your banks & enterprises (from someone who robs bank...
 Strategies for securing your banks & enterprises (from someone who robs bank... Strategies for securing your banks & enterprises (from someone who robs bank...
Strategies for securing your banks & enterprises (from someone who robs bank...
 
DotJS Lightning Talk Vorlon.js
DotJS Lightning Talk Vorlon.jsDotJS Lightning Talk Vorlon.js
DotJS Lightning Talk Vorlon.js
 
Firefox
FirefoxFirefox
Firefox
 
Tor (The Onion Router)
Tor (The Onion Router)Tor (The Onion Router)
Tor (The Onion Router)
 
[ENG] OHM2013 - The Quest for the Client-Side Elixir Against Zombie Browsers -
[ENG] OHM2013 - The Quest for the Client-Side Elixir Against Zombie Browsers - [ENG] OHM2013 - The Quest for the Client-Side Elixir Against Zombie Browsers -
[ENG] OHM2013 - The Quest for the Client-Side Elixir Against Zombie Browsers -
 
Firefox 3.5 Overview
Firefox 3.5 OverviewFirefox 3.5 Overview
Firefox 3.5 Overview
 
Introduction about mozilla
Introduction about mozillaIntroduction about mozilla
Introduction about mozilla
 
How Firefox Works
How Firefox WorksHow Firefox Works
How Firefox Works
 
mozilla firefox
mozilla firefox mozilla firefox
mozilla firefox
 
Browsers
BrowsersBrowsers
Browsers
 

Andere mochten auch

FirefoxOS Introduction
FirefoxOS IntroductionFirefoxOS Introduction
FirefoxOS Introduction
Pavel Ivanov
 
Open source and Open web (Mozilla) MozCampKashmir
Open source and Open web (Mozilla) MozCampKashmirOpen source and Open web (Mozilla) MozCampKashmir
Open source and Open web (Mozilla) MozCampKashmir
Tanzeel Khan
 

Andere mochten auch (8)

Mozilla & the Open Web
Mozilla & the Open WebMozilla & the Open Web
Mozilla & the Open Web
 
FirefoxOS Introduction
FirefoxOS IntroductionFirefoxOS Introduction
FirefoxOS Introduction
 
What is MOZILLA and what is Open Web about.
What is MOZILLA and what is Open Web about.What is MOZILLA and what is Open Web about.
What is MOZILLA and what is Open Web about.
 
Opening the mobile web mozilla and firefox os-chit thiri maung
Opening the mobile web   mozilla and firefox os-chit thiri maungOpening the mobile web   mozilla and firefox os-chit thiri maung
Opening the mobile web mozilla and firefox os-chit thiri maung
 
2011 NASA Open Source Summit - Pascal Finette
2011 NASA Open Source Summit - Pascal Finette2011 NASA Open Source Summit - Pascal Finette
2011 NASA Open Source Summit - Pascal Finette
 
Mozilla Project and Open Web
Mozilla Project and Open WebMozilla Project and Open Web
Mozilla Project and Open Web
 
Mozilla & Open Web
Mozilla & Open WebMozilla & Open Web
Mozilla & Open Web
 
Open source and Open web (Mozilla) MozCampKashmir
Open source and Open web (Mozilla) MozCampKashmirOpen source and Open web (Mozilla) MozCampKashmir
Open source and Open web (Mozilla) MozCampKashmir
 

Ähnlich wie Mozilla: Under the Hood

夜宴8期《Dive into Mozilla Labs》
夜宴8期《Dive into Mozilla Labs》夜宴8期《Dive into Mozilla Labs》
夜宴8期《Dive into Mozilla Labs》
Koubei Banquet
 
ITCamp 2013 - Petru Jucovschi - Application ecosystems
ITCamp 2013 - Petru Jucovschi - Application ecosystemsITCamp 2013 - Petru Jucovschi - Application ecosystems
ITCamp 2013 - Petru Jucovschi - Application ecosystems
ITCamp
 
Trabajo de jose
Trabajo de jose Trabajo de jose
Trabajo de jose
josemgg
 

Ähnlich wie Mozilla: Under the Hood (20)

Developing FirefoxOS
Developing FirefoxOSDeveloping FirefoxOS
Developing FirefoxOS
 
Window Shopping Browser - Bug Hunting in 2012
Window Shopping Browser - Bug Hunting in 2012Window Shopping Browser - Bug Hunting in 2012
Window Shopping Browser - Bug Hunting in 2012
 
The History and Status of Mozilla Korean Community
The History and Status of Mozilla Korean CommunityThe History and Status of Mozilla Korean Community
The History and Status of Mozilla Korean Community
 
Browsers
BrowsersBrowsers
Browsers
 
Browsers
BrowsersBrowsers
Browsers
 
Browsers
BrowsersBrowsers
Browsers
 
Browsers
BrowsersBrowsers
Browsers
 
Web browsers
Web browsersWeb browsers
Web browsers
 
Web browsers
Web browsersWeb browsers
Web browsers
 
夜宴8期《Dive into Mozilla Labs》
夜宴8期《Dive into Mozilla Labs》夜宴8期《Dive into Mozilla Labs》
夜宴8期《Dive into Mozilla Labs》
 
Banquet 08
Banquet 08Banquet 08
Banquet 08
 
Browser (1)
Browser (1)Browser (1)
Browser (1)
 
Browser (1)
Browser (1)Browser (1)
Browser (1)
 
Browsers in the actuality.
Browsers in the actuality.Browsers in the actuality.
Browsers in the actuality.
 
browser of the actuality
browser of the actualitybrowser of the actuality
browser of the actuality
 
ITCamp 2013 - Petru Jucovschi - Application ecosystems
ITCamp 2013 - Petru Jucovschi - Application ecosystemsITCamp 2013 - Petru Jucovschi - Application ecosystems
ITCamp 2013 - Petru Jucovschi - Application ecosystems
 
A web browser - Web Development (IT 316)
A web browser - Web Development (IT 316)A web browser - Web Development (IT 316)
A web browser - Web Development (IT 316)
 
Web browsers
Web browsersWeb browsers
Web browsers
 
Web browsers
Web browsersWeb browsers
Web browsers
 
Trabajo de jose
Trabajo de jose Trabajo de jose
Trabajo de jose
 

Kürzlich hochgeladen

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 

Kürzlich hochgeladen (20)

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 

Mozilla: Under the Hood