更新时间:2024-03-22 02:41
JunitPerf,由于在单元测试中实际调用的就是单元代码,因此,测试单元测试的执行效率可以直接的反应实际代码的效率。Junitperf实际是junit的一个decorator,通过编写用于junitperf的单元测试,我们也可使这一测试过程自动化。
在Windows上按以下步骤安装:
1. 解压junitperf-.zip文件到一个目录中,在系统环境变量中增加%JUNITPERF_HOME%,值为文件解压后的目录。
2. 把JUnitPerf加到CLASSPATH路径中:
set CLASSPATH=%CLASSPATH%;%JUNITPERF_HOME%/lib/junitperf-.jar
3. 把JUnitPerf加到CLASSPATH路径中:
export CLASSPATH=:/lib/junitperf-.jar
在/lib/junitperf-.jar文件中已经包含有编译好的类文件。
/build.xml文件是Ant构建文件。
可以使用以下命令构建JUnitPerf:
cd
ant jar
JUnitPerf安装包中包含了用于跟JUnitPerf结合使用的JUnit测试用例的实例。
可以输入以下命令验证JUnitPerf安装是否正常:
cd
ant test
JUnitPerf已知有以下缺陷:
· TimedTest返回的时间是测试用例的testXXX()方法的时间,包括setUp(), testXXX()和 tearDown()三个方法的总时间,这是任何测试实例中所能提供的最小的测试粒度。因此期望的时间也应该考虑set-up 和tear-down的运行时间。(译者注:或者可以自己在JUnit测试用例使用System.currentTimeMillis()方法来计算某个步骤的执行时间)
· JUnitPerf并不是一个完整的压力和性能测试工具,并且它也不会用来取代其它类似的工具。它仅仅用来编写本地的单元性能测试来帮助开发人员做好重构。
· 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.
· 在压力测试中如果有太多的用户并发运行则测试情况会越来越糟。应该参照JVM的规范来指定用户数。