JAVA入门之如何使用JUnit (二)

2025-05-09 11:41:32

1、JUnit 共有两个版本,JUnit 3 和 JUnit 4, 我们先看看这两者的区别, 后面我们会基于 JUnit 4 开发测试类,但会对 JUnit 3 进行兼容:在 JUnit 3 中,如果某个类是测试类,其必须继承框架提供的基类 TestCase,如果某个方法是测试方法,其方法名称必须以 test 开头,如果希望某个方法作为初始化方法,即任何测试方法运行前都先运行这个方法,则这个方法的名称必须是 setUp,如果希望在某个测试方法运行之后运行某个释放资源的方法,这个方法的名称必须是 tearDown 。JUnit 4,实现了对注解的支持,开发测试类非常方便! 测试类不需要继承任何基类,测试方法通过注解 @Test 来标识,初始化方法通过注解 @Before 来标识,释放资源的方法通过注解 @After 来标识 。综上,为了让我们在 JUnit 4 中开发的测试类在 JUnit 3 中也能使用,我们的测试方法同样以 test 开头,初始化方法也命名为 setup,释放资源的方法也命名为 tearDown !

2、明确我们要测试的业务类,并新建对应的测试类! 通常我们为所有测试类新建一个包,并且测试类的名称为 "Test+其测试的业务类名称" !

JAVA入门之如何使用JUnit (二)

4、编写测试方法,测试方法需要通过注解 @Test 进行标示,为了和 JUnit 3 兼容,其方法名称需要以 test 开头,通常我们的测试方法名称为 "test+待测试的业务方法名称"。对于测试方法,其中调用需要测试的业务类对应的方法,获得返回值后,调用 org.junit.Assert 断言类的静态方法对返回值进行检查校验! 如果一个业务方法没有返回值该怎么办呢 ? 比如某个业务方法就是往数据库中插入一条数据,但并未返回任何数据,那么我们在调用完业务方法后,需要连接数据库来尝试获取这条数据,再调用 Assert 相应的方法对这个获取结果进行校验!org.junit.Assert 断言类提供了很多种类的静态方法来对各种类型的返回结果进行校验!一个测试类中可以包含多个测试方法,这些测试方法在运行的时候会互相独立,最后给出各自的运行结果!

JAVA入门之如何使用JUnit (二)

6、编写测试执行时间的测试方法,对于某些业务方法,我们期望其在一个特定时间内完成,那如何编写这样的测试方法呢?@Test注解提供了一个timeout参数,我们可以指定这个timeout 的值(毫秒)来限定这个业务方法的执行时间,如果在指定时间内完成,则测试通过,否则测试失败,比如我们希望一个业务方法在 4秒 内完成, 我们需要这样写注解 :@Test(timeout=4000)

JAVA入门之如何使用JUnit (二)JAVA入门之如何使用JUnit (二)
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢