Java 的JUnit 使用

什么是JUnit

JUnit 是一个回归测试框架,被开发者用于实施对应用程序的单元测试,加快程序编制速度,同时提高编码的质量。JUnit 测试框架能够轻松完成以下任意两种结合:

Eclipse 集成开发环境

  • Ant 打包工具
  • Maven 项目构建管理

特性

JUnit 测试框架具有以下重要特性:

  • 测试工具
  • 测试套件
  • 测试运行器
  • 测试分类

直接已一个实例讲解,准备两个 class,这里我使用网易云的nos sdk演示

例子

首先,新建一个maven 工程,在 pom.xml 中添加

<dependency>
   <groupId>com.netease.cloud</groupId>
   <artifactId>nos-sdk-java-publiccloud</artifactId>
   <version>0.0.2</version>
   </dependency>

然后创建一个class 为nossdkdemo,内容如下

package com.nos.app.nos.sdk;
import com.netease.cloud.auth.BasicCredentials;
import com.netease.cloud.auth.Credentials;
import com.netease.cloud.services.nos.NosClient;
import com.netease.cloud.services.nos.model.CannedAccessControlList;
import com.netease.cloud.services.nos.model.CreateBucketRequest;

public class NosSdkDemo {

    /**
     * 创建公有桶
     * @param access 网易云控制台获取accesskey
     * @param secret 网易云控制台获取 secretkey
     * @param endpoint 网易云对象存储服务中获取
     * @param nosname nos的名称
     */

    public static void CreatePublicBucket(String access, String secret,String endpoint,String nosname) {
        String accessKey = access;
        String secretKey = secret;
        Credentials credentials = new BasicCredentials(accessKey, secretKey);
        NosClient nosClient = new NosClient(credentials);
        nosClient.setEndpoint(endpoint);
        CreateBucketRequest request = new CreateBucketRequest(nosname);
        request.setCannedAcl(CannedAccessControlList.PublicRead);
        nosClient.createBucket(request);
    }

    /**
     * 创建私有桶
     * @param access 网易云控制台获取accesskey
     * @param secret 网易云控制台获取 secretkey
     * @param endpoint 网易云对象存储服务中获取
     * @param nosname nos的名称
     */

    public static void CreatePrivateBucket(String access, String secret,String endpoint,String nosname) {
        String accessKey = access;
        String secretKey = secret;
        Credentials credentials = new BasicCredentials(accessKey, secretKey);
        NosClient nosClient = new NosClient(credentials);
        nosClient.setEndpoint(endpoint);
        CreateBucketRequest request = new CreateBucketRequest(nosname);
        request.setCannedAcl(CannedAccessControlList.Private);
        nosClient.createBucket(request);
    }


}

在创建一个 class 内容如下

package com.nos.app.nos.sdk;
import org.junit.Test;

import com.nos.app.nos.sdk.*;

public class TestClass {

//    @Test
    /**
     * 测试创建公有桶
     */
    public void testCreatePublicBucket() {

        NosSdkDemo.CreatePublicBucket("","","nos-eastchina1.126.net", "2018");
    }

    @Test
    /*
     * 测试创建私有桶
     */
    public void testCreatePrivateBucket() {
        NosSdkDemo.CreatePrivateBucket("","","nos-eastchina1.126.net", "2019");
    }
}

没错,其中的 @Test 就是用来进行单元测试的,单写完一个方法进行调试时候,我们可以使用Junit来进行测试,当测试完后直接把 @Test 注释掉就可以了。而不必把一整段代码注释掉,如图所示

如图成功,则会显示绿色的进度条

失败也会显示失败原因