|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
ObjectContext
LogContext
TestContext
TimeContext
public abstract class TimeContext
This class represents a test context
specialized
for measuring execution time.
TimeContext
implementations may perform assertions based upon the
execution time. For example:
class MyTestCase extends TestCase() {
...
protected void validate() {
long ns = TimeContext.getAverageTime("ns");
TestContext.assertTrue(ns < 100); // Error if execution time is more than 100 ns.
...
}
}
Field Summary | |
---|---|
static Configurable<Class<? extends TimeContext>> |
DEFAULT
Holds the time context default implementation (by default logs average and minimum execution time to System.out ). |
static Class<? extends TimeContext> |
REGRESSION
Holds an implementation which does not perform any logging but raises an AssertionException when an assertion fails, including any timing
assertion. |
static Configurable<Integer> |
TEST_DURATION_MS
Holds the minimum duration of each test execution (default 1000 ms). |
Fields inherited from class TestContext |
---|
CONSOLE |
Fields inherited from class LogContext |
---|
NULL, STANDARD, SYSTEM_OUT |
Fields inherited from class Context |
---|
ROOT |
Constructor Summary | |
---|---|
TimeContext()
|
Method Summary | |
---|---|
protected void |
doRun(TestCase testCase)
Benchmarks the specified test case and logs the results. |
static void |
enter()
Enters the DEFAULT time context. |
static void |
exit()
Exits the current time context. |
static long |
getAverageTime(String unit)
Returns the average execution time of the latest execution performed or -1 if the current context is not a time context. |
long |
getAverageTimeInPicoSeconds()
Returns the average execution time of the latest execution stated in pico-seconds. |
static long |
getMaximumTime(String unit)
Returns the maximum execution time of the latest execution performed or -1 if the current context is not a time context. |
long |
getMaximumTimeInPicoSeconds()
Returns the maximmum execution time of the latest execution stated in pico-seconds. |
static long |
getMinimumTime(String unit)
Returns the minimum execution time of the latest execution performed or -1 if the current context is not a time context. |
long |
getMinimumTimeInPicoSeconds()
Returns the minimum execution time of the latest execution stated in pico-seconds. |
Methods inherited from class LogContext |
---|
debug, debug, debug, enterAction, error, error, error, error, error, error, error, exitAction, getCurrentLogContext, getDefault, info, info, info, isDebugLogged, isErrorLogged, isInfoLogged, isLogged, isWarningLogged, logDebug, logError, logInfo, logMessage, logWarning, warning, warning, warning |
Methods inherited from class Context |
---|
enter, enter, exit, exit, getCurrentContext, getOuter, getOwner, setConcurrentContext, toString |
Methods inherited from class Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final Class<? extends TimeContext> REGRESSION
AssertionException
when an assertion fails, including any timing
assertion.
public static final Configurable<Integer> TEST_DURATION_MS
public static final Configurable<Class<? extends TimeContext>> DEFAULT
System.out
).
Constructor Detail |
---|
public TimeContext()
Method Detail |
---|
public static void enter()
DEFAULT
time context.
public static void exit()
ClassCastException
- if the context is not a time context.public static long getMinimumTime(String unit)
-1
if the current context is not a time context.
unit
- one of "s", "ms", "us", "ns", "ps"
public static long getAverageTime(String unit)
-1
if the current context is not a time context.
unit
- one of "s", "ms", "us", "ns", "ps"
public static long getMaximumTime(String unit)
-1
if the current context is not a time context.
unit
- one of "s", "ms", "us", "ns", "ps"
public long getMinimumTimeInPicoSeconds()
public long getAverageTimeInPicoSeconds()
public long getMaximumTimeInPicoSeconds()
protected void doRun(TestCase testCase) throws Exception
doRun
in class TestContext
testCase
- the test case being executed if not marked ignored.
Exception
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |