Java基础知识学习 - JUnit单元测试

JUnit测试单元

JUnit测试单元可以实现一个类中允许多个’main’方法的效果,具体是独立自主地运行各个待测试的方法。

注解(annotation)

注解是Java中的引用数据类型,是一个特殊的类,由第三方工具包提供,已经存在于Java的本地文件 **lib(依赖)**中,

使用注解时,需要导入依赖。@Test是 JUnit 的一个基本注解,创建一个注解对象,Test 是注解名,表示接下来创建的是一个测试方法,类似于 main 方法。

使用JUnit测试单元

1.创建一个类,命名Demo

2.在类中写注解@Test,然后alt + enter 导入依赖,选择 JUnit4(常用)

​ 或者找到IDEA下lib的 junit4 手动导入,在文件夹 Project StructureDependencies 中 选择 +

​ 点击第一个,选择路径。

3.然后会出现一个报错,这时需要在下一行写测试方法,这样就不会报错了,方法的固定格式:

public void 方法名() { //方法体 }

例如:

package junit;

import org.junit.Test;

public class Demo {
    @Test
    public void test(){
        System.out.println("java");
    }

    @Test
    public void test2(){
        System.out.println("c++");
    }
}

此时点击运行后,可以选择运行整个类,也可以运行某一个测试方法。

注意:

1.写了测试方法尽量再避免写 main 方法

2.测试方法的格式是固定的

3.测试方法也是可以互相调用的

例如:

 @Test
 public void test(){
 System.out.println("java");
 test3();
 }

@Test
public void test3(){
System.out.println("666");
}

那么为什么不建议将类名命名成 Test 呢?

因为注解和类是同等级的引用数据类型,当使用 Test 命名类时,@Test 就会面临选择导入依赖中的Test注解和自身 Test 类的选择,那么Java会根据就近原则优先选择用户自定义的 Test 类。此时 Test 类既不是注解,也无法完成注解的功能,就会报错。

解决方法:除了不使用 Test 命名,在写注解时可以使用 ‘全限定类名’

当使用类(注解)时,使用“类名”的形式,称为**“简单类名”;使用“包名 + 类名”的形式,称为“全限定类名”**。

“全限定类名”的作用是唯一确定一个类,在同一个包中不允许存在同名的类,但是在不同包中就会存在,所以使用“全限定类名”可以指明类的使用。

例如:

import org.junit.Test;

public class Test {
    @org.junit.Test
    public void test(){
        System.out.println("java");
    }

注解和类?

解读注解的CSDN博客:

java注解的本质以及注解的底层实现原理_qq_20009015的博客-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值