Java单元测试Junit萌新篇

本文主讲如何在IntelliJ IDEA上如何配置单元测试Junit4以及如何使用。

步骤:
1.下载jar包
2. 项目软件配置
3. 使用实例

一、下载jar包:

  1. https://github.com/junit-team/junit4/wiki/Download-and-Install
    在这里插入图片描述

  2. 可以根据需要选择对应版本

在这里插入图片描述

在这里插入图片描述
3.选择jar包进行下载
其他文件可根据需要自行选择下载。
另外,建议大家在选择junit文件版本时,选择4.10版本或者低版本。因为选择较高版本4.11以上版本不在包含hamcrest。
如果选择较高版本会造成没有hamcrest,造成需要手动导入。junit.jar + hamcrest-core.jar + hamcrest-library.jar或者是:junit-dep.ajr+hancrest-all.jar。但在使用中会有些方法同时出现在了org.hamcrest.Mathchers和org.hamcrest.core中,则在用到时候引入的时候需要注意。

二、项目软件配置

在本地ItelliJ IDEA上创建一个项目。在导航栏选择File->Project Structure->Modules选择’+’
在这里插入图片描述
在这里插入图片描述
找到自己下载的Junit和hamcrest的jar文件,都添加并应用到项目就OK啦。
在这里插入图片描述
之后在这个库目下可以看到添加成功。
在这里插入图片描述

三、使用实例

因为有些已经创建了,所以不用在意图片背景不同

  1. 自己创建Java类,定义方法。
    在这里插入图片描述

  2. 新建test文件夹,并将文件夹改为测试根目录。
    在这里插入图片描述

  3. 在自己目标方法类内ctrl+shift+T,快捷键呼出新建测试方法
    在这里插入图片描述

  4. 完善测试方法,运行测试类。如实是预期结果,右下角会显示各个方法是绿色。
    图中assertEquals只是一种判断方法,可自行查阅文档查看其它方法。
    在这里插入图片描述

四、测试使用相关

  1. 各种测试中常用的注解
    @Test:把该方法标记为测试方法
    @Before:该方法在每个测试方法执行前都执行一次
    @After:该方法在每个测试方法执行后都执行一次
    @BeforeClass:在所有测试方法执行前执行一次,在测试类还没有实例化就已经被加载,所以用static修饰
    @AfterClass:在所有测试方法执行后执行一次,在测试类还没有实例化就已经被加载,所以用static修饰
    @Ignore:该方法将被忽略不执行
  2. Junit是单元测试,所以每个测试方法都是一个单独的实例进行测试,各个方法互不影响。
    在测试类中,我定义全局变量volatile int i=0;且在每个测个方法都对 i 进行了+1操作,从结果看出 i 并没有变成3。在这里插入图片描述
  3. 编写测试类的原则: 
    ①测试方法上必须使用@Test进行修饰①测试方法上必须使用@Test进行修饰
    ②测试方法必须使用public void 进行修饰,不能带任何的参数
    ③新建一个源代码目录来存放我们的测试代码,即将测试代码和项目业务代码分开
    ④测试类所在的包名应该和被测试类所在的包名保持一致
    ⑤测试单元中的每个方法必须可以独立测试,测试方法间不能有任何的依赖
    ⑥测试类使用Test作为类名的后缀(不是必须)
    ⑦测试方法使用test作为方法名的前缀(不是必须)
  4. @Test的属性
    ①测试异常在这里插入图片描述
    在测试方法中,我输入一个非法参数,在主方法会抛异常,但此时因为加入(expected = IllegalArgumentException.class),表示就是来判断是否得到异常的测试,因此通过测试。
    ②超时测试在这里插入图片描述
    在主方法内我sleep了3000ms,测试方法内允许2000ms的超时,所以此处这个方法没有通过测试用例。
    且从异常看出,sleep被中断了。因此当超出timeout时间后,测试方法中断了主方法的sleep。

最后,关于Java其他测试知识需要大家去自己拓展了,本文就到这里了。

如有错误之处还望指正;

如果疑问,欢迎提问。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值