QA/Automation/Projects/Endurance Tests: Difference between revisions

From MozillaWiki
< QA‎ | Automation‎ | Projects
Jump to navigation Jump to search
No edit summary
Line 19: Line 19:
|-  
|-  
| valign="top" | '''Discussion:'''  
| valign="top" | '''Discussion:'''  
| [http://etherpad.mozilla.com:9000/KabTTn3qnA Etherpad Document]
| [http://etherpad.mozilla.com:9000/KabTTn3qnA General]<br />[http://etherpad.mozilla.com:9000/mLWlTg7DwK Test Snippets]
|-  
|-  
| valign="top" | '''Repository Location:'''  
| valign="top" | '''Repository Location:'''  
Line 53: Line 53:


# Command line wrapper for Mozmill that:
# Command line wrapper for Mozmill that:
#* Takes a JSON parameter with:
#* Takes the following parameters:
#** Number of times to loop
#** Number of times to loop
#** Maximum duration of test
#** Delay to wait before each iteration
#* Runs a single 'snippet' according to the above parameters
#* Runs a single 'snippet' according to the above parameters
#* Outputs memory usage to file
#* Outputs memory usage to the report
# A 'snippet' that uses the new command line wrapper and outputs results that would potentially expose degradation of performance
# A 'snippet' that uses the new command line wrapper and outputs results that would potentially expose degradation of performance
# New reports for endurance tests in Mozmill dashboard


== Phase ? ==
== Phase ? ==
Line 77: Line 78:
# Endurance Automation Wrapper - This is the harness that will launch the AUT, run the test snippet until either the loop count is reached or the maximum time has elapsed, and report results.
# Endurance Automation Wrapper - This is the harness that will launch the AUT, run the test snippet until either the loop count is reached or the maximum time has elapsed, and report results.
# Initial Test Snippet - The intention is to write a simple test snippet that opens and closes the add-ons manager.
# Initial Test Snippet - The intention is to write a simple test snippet that opens and closes the add-ons manager.
# Dashboard report for Endurance Tests.


= Additional Requirements =
= Additional Requirements =


* Use debug nightly builds of Firefox to be able to get a full stack of information
* Use debug nightly builds of Firefox to be able to get a full stack of information

Revision as of 23:20, 1 February 2011

Overview

Lead: Dave Hunt
Second: Anthony Hughes
Co-workers: Aaron Train
Henrik Skupin
Geo Mealer
Dates: Kick-off: December 2010
Phase I: Q1/2011 (goal)
Status: Requirements gathering / planning
Discussion: General
Test Snippets
Repository Location: TBD
Tracking Bug(s): bug 629065
Documentation: TBD

Meetings

Summary

We're exploring different ways and or abilities to utilize Mozmill and its testing capabilities to determine if Firefox can sustain the continuous expected load seen through simulated 'real' web usage. These tests will ultimately create a simple real world model that employs a high but normal load pattern of actions for the browser in order to determine any potential:

  • Browser performance degradation
  • Crashes

Initially, this project will focus on setting up an environment employing a new test harness that will loop through simple test snippets to expose the above areas of concern within Firefox.

Definitions

Test Snippet
A test snippet will be one or more actions that can be performed within the AUT written in JavaScript according to the Mozmill specifications.

Roadmap

Phase I - Planned Q1/2011

  1. Command line wrapper for Mozmill that:
    • Takes the following parameters:
      • Number of times to loop
      • Delay to wait before each iteration
    • Runs a single 'snippet' according to the above parameters
    • Outputs memory usage to the report
  2. A 'snippet' that uses the new command line wrapper and outputs results that would potentially expose degradation of performance
  3. New reports for endurance tests in Mozmill dashboard

Phase ?

  • Gracefully handle the AUT crashing, and ensure all reports are intact
  • Output results to a location on the file system
  • Read parameters in from disk
  • Determine areas of perceived risk within the AUT
  • Write more test snippets based on above
  • Gather metrics on more system resources
  • Present results in an easy to digest way
  • Automate the running of endurance tests
  • Abort tests that exceed predetermined resource thresholds
  • Determining saturation points (baselines) in the AUT and monitor for major discrepancies

Outstanding Items

  1. Endurance Automation Wrapper - This is the harness that will launch the AUT, run the test snippet until either the loop count is reached or the maximum time has elapsed, and report results.
  2. Initial Test Snippet - The intention is to write a simple test snippet that opens and closes the add-ons manager.
  3. Dashboard report for Endurance Tests.

Additional Requirements

  • Use debug nightly builds of Firefox to be able to get a full stack of information