Loading…

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

Like this presentation? Why not share!

Continuous Performance Testing

on

  • 4,512 views

The presentation reviews various tools and libraries which help us add continuous performance testing to the development process. Using Hudson CI to manage our build system, JUnit based performance ...

The presentation reviews various tools and libraries which help us add continuous performance testing to the development process. Using Hudson CI to manage our build system, JUnit based performance tests, and JMeter and Grinder load tests. See demo project @ http://www.doboism.com/blog/2010/11/25/continuous-performance-testing/

Statistics

Views

Total Views
4,512
Views on SlideShare
3,973
Embed Views
539

Actions

Likes
0
Downloads
45
Comments
1

3 Embeds 539

http://www.doboism.com 531
http://en.tietostage.tieto.com 6
http://webcache.googleusercontent.com 2

Accessibility

Categories

Upload Details

Uploaded via as OpenOffice

Usage Rights

CC Attribution License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • See demo project and @ http://www.doboism.com/blog/2010/11/25/continuous-performance-testing/
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Continuous Performance Testing Continuous Performance Testing Presentation Transcript

  • Continuous Performance Testing
  • What you are about to witness
    • Continious integration bla bla
    • What is hudson?
    • Performance Unit tests
    • Load testing with Jmeter
    • Load testing with Grinder
  • Continuous Integration?
    • Scheduled, automated build
    • Know of problems early on
    • Have a reasonably stable product at any time
    • Track various metric (tests, coverage, static code analysis, coding conventions)
  • Hudson CI
    • A breeze to install, simple to configure
    • Architecture:
      • Triggers (scheduling)
      • Hook to source control
      • Build tools (executable, ant, maven)
      • Report generators (test results)
      • Notifiers (email, RSS, etc.)
    • Other goodies: fingerprinting, distribution, ...
  • Continuous performance testing?
    • Track regressions in product performance
    • Meet specified performance requirements
    • Put guards for bugs resulting in errors threads
    • Establish a benchmark for the application
    • See (and show) progress
  • Performance Unit tests
    • Junit – not very much (timeout?)
    • Roll your own
    • Test decorators to help Threading, logging, more detailed requirements:
      • JUnitPerf (Junit 3.5 – decorate suits()
      • JUnitBench
      • ContiPerf
  • When to test units for performance?
    • Sanity tests
    • Performance critical units
    • Before making changes that might cause regressions
    • Note: Junit can be harnessed for sub-system tests, not just units
  • System tests
    • Try to emulate ”Real life” conditions: Test plan, deployment
    • Focus on finding out if something is wrong, not what
    • Check how to application as a whole is working
    • Build to scale when needed
    • Update the test as your application changes (example – cached responses)
  • JMeter
    • Tests are written in UI
    • Various samplers: Http, DB, java
    • Complicated tests are achived with different test plan elements, scripts, plugins
    • Distributed agents
    • Hudson plugin
  • Grinder
    • Generic and minimal ( == simple) approach
    • Jython (python) scripts based
    • Instrument tested code
    • Instrument your call
    • Http - out of the box support
    • Distributed test support via console
  • What we did not cover
    • Complex testing architecutre (distributed testing, multiple deployment targets)
    • Measuring server metrics (i.e. CPU, IO, Memory)
    • Micro performance testing – instrumented code, profiling
  • Amitay Dobo Http://www.doboism.com