JUnitPerf

Measure the performance and scalability of functionality of JUnit tests
Download

JUnitPerf Ranking & Summary

Advertisement

  • Rating:
  • License:
  • Freeware
  • Price:
  • FREE
  • Publisher Name:
  • Clarkware Consulting Inc
  • Publisher web site:
  • http://clarkware.com
  • Operating Systems:
  • Mac OS X
  • File Size:
  • 67 KB

JUnitPerf Tags


JUnitPerf Description

Measure the performance and scalability of functionality of JUnit tests JUnitPerf is a free and open source collection of JUnit test decorators that you ca use to measure the performance and scalability of functionality contained within existing JUnit tests. JUnitPerf contains the following JUnit test decorators:TimedTest· A TimedTest is a test decorator that runs a test and measures the elapsed time of the test.· A TimedTest is constructed with a specified maximum elapsed time. By default, a TimedTest will wait for the completion of its decorated test and then fail if the maximum elapsed time was exceeded. Alternatively, a TimedTest can be constructed to immediately signal a failure when the maximum elapsed time of its decorated test is exceeded.LoadTest· A LoadTest is a test decorator that runs a test with a simulated number of concurrent users and iterations.JUnitPerf tests transparently decorate existing JUnit tests. This decoration-based design allows performance testing to be dynamically added to an existing JUnit test without affecting the use of the JUnit test independent of its performance. By decorating existing JUnit tests, it's quick and easy to compose a set of performance tests into a performance test suite. The performance test suite can then be run automatically and independent of your other JUnit tests. In fact, you generally want to avoid grouping your JUnitPerf tests with your other JUnit tests so that you can run the test suites independently and at different frequencies. Long-running performance tests will slow you down and undoubtedly tempt you to abandon unit testing altogether, so try to schedule them to run at times when they won't interfere with your refactoring pace. JUnitPerf tests are intended to be used specifically in situations where you have quantitative performance and/or scalability requirements that you'd like to keep in check while refactoring code. For example, you might write a JUnitPerf test to ensure that refactoring an algorithm didn't incur undesirable performance overhead in a performance-critical code section. You might also write a JUnitPerf test to ensure that refactoring a resource pool didn't adversely affect the scalability of the pool under load.NOTE: JUnitPerf is licensed and distributed under the terms of the BSD License. Requirements: · JUnit 3.5 or later · Java 2 or later Limitations: · The elapsed time measured by a TimedTest decorating a single testXXX() method of a TestCase includes the total time of the setUp(), testXXX(), and tearDown() methods, as this is the granularity offered by decorating any Test instance. The expected elapsed time measurements should be adjusted accordingly to account for the set-up and tear-down costs of the decorated test. · JUnitPerf is not intended to be a full-fledged load testing or performance profiling tool, nor is it intended to replace the use of these tools. JUnitPerf should be used to write localized performance unit tests to help developers refactor responsibly. · The performance of your tests can degrade significantly if too many concurrent users are cooperating in a load test. The actual threshold number is JVM specific. What's New in This Release: · When using the Swing test runner, the progress bar now turns red when a TimedTest fails. In prior releases, when a test failed a failure message was printed but the progress bar stayed green. Thanks to those folks who do use the graphical runner for performance tests for pointing out this bug!


JUnitPerf Related Software