ContiPerf Changelog

What's new in ContiPerf 2.3.2

Mar 12, 2013
  • warmup time measurement handling fails with custom clock
  • client application hangs when finished

New in ContiPerf 2.2.0 (May 25, 2012)

  • Enhancements:
  • Using the system's most exact clock by default
  • Supporting custom clock implementations
  • Supporting multiple different clocks at the same time
  • Implemented alternative clocks:
  • system (the system's clock)
  • cpu (the thread's CPU time)
  • user (the thread's user time)
  • Bug fixes:
  • NullPointerException in reports during parallel test execution

New in ContiPerf 2.0.1 (Apr 9, 2012)

  • Enhancements:
  • Ramp-up time to specify the time to wait before adding a new thread, e.g. @PerfTest(rampUp = 1000)
  • Supporting warm-up time to start measurement and requirement checking after an initial time period is over, e.g. @PerfTest(warmUp = 1000)
  • Supporting wait timers to induce wait time between invocations
  • usage e.g. @PerfTest(timer = RandomTimer.class, timerParams = { 200, 400 })
  • predefined timers: None, ConstantTimer, RandomTimer, CumulatedTimer custom timers by implementing the WaitTimer interface
  • new method LatencyCounter.percentileAboveLatency(latency) @RunWith(ParallelRunner.class) to execute all tests of a class concurrently Javadoc for tooltip help on @PerfTest and @Requirement
  • new method CounterRepository.printSummary()
  • Method StopWatch.stop() returns the elapsed time in milliseconds
  • Bug fixes:
  • CSVSummaryReportModule causes FileNotFoundException
  • HTML report displays the wrong date

New in ContiPerf 1.07 (Nov 17, 2010)

  • max latency failure message uses incorrect value

New in ContiPerf 1.05 (May 24, 2010)

  • Class annotations
  • @PerfTest and @Required can now be specified on class level
  • and provide defaults for all test methods that have not been
  • annotated themselves.
  • Example:
  • @PerfTest(invocations = 5)
  • @Required(max = 1200, average = 250)
  • public class SmokeTest {
  • @Rule
  • public ContiPerfRule i = new ContiPerfRule();
  • @Test
  • public void test1() throws Exception {
  • Thread.sleep(200);
  • @Test
  • public void test2() throws Exception {
  • Thread.sleep(150);
  • Test suite mechanism
  • Use @RunWith(ContiPerfSuiteRunner.class) to make use of ContiPerf's suite runner
  • and specify all test classes as comma-separated list in a @SuiteClasses annotation.
  • Any @PerfTest or @Required annotation applied to the suite class is used for any
  • contained test that has now annotation of same type.
  • Example:
  • @RunWith(ContiPerfSuiteRunner.class)
  • @SuiteClasses(MyApplicationTest.class)
  • @PerfTest(invocations = 1000, threads = 30)
  • public static class PeakLoadTest {

New in ContiPerf 1.04 (Apr 24, 2010)

  • Bug fix: verification of the 'max' requirement was broken in 1.03

New in ContiPerf 1.03 (Apr 19, 2010)

  • New Features:
  • Allowing for concurrency tests, using @PerfTest(treads = 3)
  • Introduced cancelOnViolation() in @PerfTest, which makes it configurable whether a test run shall be canceled
  • if the 'max' requirement is violated. The default is 'true'.
  • Internal Changes:
  • Redesigned test runners
  • Introduced PerfTestException and child classes:
  • PerfTestFailure
  • PerfTestExecutionError
  • PerfTestConfigurationError

New in ContiPerf 1.02 (Apr 13, 2010)

  • Bug fix: Former releases expected a Maven-like project structure, other structures were causing NullPointerExceptions.