-
Feature Request
-
Resolution: Unresolved
-
Major
-
None
-
None
-
None
See following idea:
Before the test, the extension will benchmark the machine, for example by counting some large loop.
Then, instead of ms as in @Performance(time=5), it will be possible to reference time like @Performance(relativeTime=5), meaning that it must be finished sooner that 5 times duration of the loop.
This concept can be further extended by configurable relativeUnit, e.g.
@PerformanceTest(relativeUnitStrategy=COMPUTED) public TestFoo { @PerformanceTest(relativeTime=5) public void test() { 5x computed loop } } @PerformanceTest(relativeUnitStrategy=DEFINED, relativeUnit=5) public TestFoo2 { @PerformanceTest(relativeTime=5) public void test() { 5x5 } } @PerformanceTest(relativeUnitStrategy=CONFIGURATION) public TestFoo3 { @PerformanceTest(relativeTime=5) public void test() { 5x value in arquillian.xml or in system property } }
and finally
@PerformanceTest(relativeUnitStrategy=CONFIGURATION) public TestFoo4 { @PerformanceTest(relativeTime=5, time = 50) public void test() { what ever time is shorter will trigger } }