24分钟学会用JMock进行单元测试[2]

发表于:2010-03-16来源:作者:点击数: 标签:单元JMock学会
24分钟学会用JMock进行单元测试[2] 单元测试代码 在工程中导入jmock-1.0.1.jar ,jmock-cglib-1.0.1.jar ,cglib-full-2.0.jar 三个jar包,然后在JUnit中执行BusinessTest. java ,会显示绿棒,这样,在没有 数据库 的情况下,单元测试成功。 使用JMock模拟

  24分钟学会用JMock进行单元测试[2]   单元测试代码

  在工程中导入jmock-1.0.1.jar ,jmock-cglib-1.0.1.jar ,cglib-full-2.0.jar 三个jar包,然后在JUnit中执行BusinessTest.java,会显示绿棒,这样,在没有数据库的情况下,单元测试成功。

  使用JMock模拟类的条件:

  1、要有无参数的构造器;

  2、构造器是public;

  这样对于private的构造器或单例模式的类应该是无法模拟了。这样就要求我们养成针对接口编程的习惯,对接口用JMock进行模拟将不受这些限制。只需要将

  import org.jmock.cglib.MockObjectTestCase;

  import org.jmock.cglib.Mock;

  改为

  import org.jmock.MockObjectTestCase;

  import org.jmock.Mock;

  即可。

  对于Mock类,有很多API可供使用,比如:

  isA(Class clz) 表示为某个类

  isVoid() 将will()换成isVoid()表示无返回值

  详细API可以参考一下DOC,还会找到很多有用的东西。软件测试

原文转自:http://www.ltesting.net