JunitPerf

更新时间:2024-03-22 02:41

JunitPerf,由于在单元测试中实际调用的就是单元代码,因此,测试单元测试的执行效率可以直接的反应实际代码的效率。Junitperf实际是junit的一个decorator,通过编写用于junitperf的单元测试,我们也可使这一测试过程自动化。

安装

Windows

在Windows上按以下步骤安装:

1. 解压junitperf-.zip文件到一个目录中,在系统环境变量中增加%JUNITPERF_HOME%,值为文件解压后的目录。

2. 把JUnitPerf加到CLASSPATH路径中:

set CLASSPATH=%CLASSPATH%;%JUNITPERF_HOME%/lib/junitperf-.jar

Unix

在UNIX上按以下步骤安装:

1. 解压缩junitperf-.zip到相应的目录下。例如:。

2. 修改文件的权限:

chmod -R a+x

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的规范来指定用户数。

免责声明
隐私政策
用户协议
目录 22
0{{catalogNumber[index]}}. {{item.title}}
{{item.title}}