文章目录

  • 测试分类
  • Junit 使用步骤
  • 测试结果的判定
  • 常用的注解
    • @Before
    • @After

测试分类

黑盒测试:不需要写代码,不需要关注程序执行具体逻辑和流程,给输入值,看程序是否能够输出期望的值
白盒测试:需要写代码,需要关注程序执行的具体逻辑、流程、性能等技术细节

Junit 属于白盒测试

Junit 使用步骤

1.定义一个测试类(测试用例)
规范建议:
测试类命名:功能名称或者类名 + Test
包命名:xxx.xxx.xxx.test

2.定义测试方法
规范建议:
方法名:test + 被测试的方法名
返回值:void
参数列表:空参

3.给方法加上注解 @Test

4.添加Junit的依赖环境

添加 Junit 依赖环境前,输入@Test 注解会报错,点击红色灯泡或者按下组合键 Option + Enter ,如下图所示,选择将 Junit4 添加到类路径中

测试结果的判定

使用断言操作,例如,测试方法 add(int a, int b),传入参数 1,2,期望的输出结果是 3,即我断言这个结果是 3,所以可以将断言的结果和实际方法返回的值做对比,如果相同则测试通过(结果会显示绿色),如果不同则测试不通过(结果会显示红色)。

可以使用 Assert 的静态方法 public static void assertEquals(long expected, long actual),进行断言相等比较

示例代码:

package priv.lwx.javaprac.test;import org.junit.Assert;
import org.junit.Test;
import priv.lwx.javaprac.junit.Calculator;/*** @Author liaowenxiong* @Version* @date 2021/9/14 下午5:28*/
public class CalculatorTest {/*** 测试add方法*/@Testpublic void testAdd() {// 创建Calculator对象Calculator c = new Calculator();// 调用add方法int result = c.add(3, 5);// System.out.println(result);// 测试时通常情况下不要输出// 使用断言,和真实的结果对比,相同则测试通过(会显示绿色),不同则测试不通过(会显示红色)Assert.assertEquals(8,result);}/*** 测试sub方法*/@Testpublic void testSub() {// 创建Calculator对象Calculator c = new Calculator();int result = c.sub(1, 2);// 使用断言相等比较Assert.assertEquals(-1, result);}
}

断言相等比较,如果预期的值和实际返回的值不相等,会看到如下的输出结果:

常用的注解

@Before

在所有测试方法执行前都会先执行 @Before 注解的方法。

@After

在所有测试方法执行后都会自动执行 @After 注解的方法。
注意:测试方法报错,也会自动执行 @After 注解的方法。

IntelliJ IDEA for Mac如何使用单元测试Junit相关推荐

  1. intellij idea 2018 mac汉化破解版激活方法附注册码

    IntelliJ IDEA 2018 for Mac中文破解版正式上线啦,这款强大的IDE开发工具终于在万众期待中迎来了中文语言界面.intellij idea 2018中文破解版采用非侵入式,直观的 ...

  2. IntelliJ IDEA for Mac (java开发集成环境) v2021.3

    IntelliJ IDEA for Mac是一个综合性的Java编程环境,被许多开发人员和行业专家誉为市场上最好的IDE.IntelliJ IDEA for Mac提供了一系列最实用的的工具组合:智能 ...

  3. 自动化测试(二) 单元测试junit的Test注解突然不能使用原因以及解决方案

    自动化测试(二) 单元测试junit的Test注解突然不能使用原因以及解决方案 参考文章: (1)自动化测试(二) 单元测试junit的Test注解突然不能使用原因以及解决方案 (2)https:// ...

  4. Java单元测试(Junit+Mock+代码覆盖率)

    单元测试是编写测试代码,用来检测特定的.明确的.细颗粒的功能.单元测试并不一定保证程序功能是正确的,更不保证整体业务是准备的. 单元测试不仅仅用来保证当前代码的正确性,更重要的是用来保证代码修复.改进 ...

  5. 单元测试junit参数_使用Junit参数在更少的时间内编写更好的单元测试

    单元测试junit参数 大多数人都知道单元测试的重要性和好处,以及为什么要在进行的项目中使用它们. 而且,大多数人不喜欢在他们从事的项目中编写单元测试. TDD的人当然处于另一面,但根据我的经验,他们 ...

  6. IntelliJ IDEA for Mac在MacOS模式下的动态代码模板快捷键(Live Templates Shortcut)

    快捷键 快捷键符号 英文名称 功能说明 Option + Command + J ⌥ ⌘ J Select Template 弹出模板选择窗口,将选定的代码使用动态模板包住 Option +Comma ...

  7. IntelliJ IDEA for Mac如何存取自定义快捷键配置文件

    IntelliJ IDEA for Mac自定义的快捷键配置文件在以下的目录中: /Users/liaowenxiong/library/application support/JetBrains/I ...

  8. idea mac 替换_史上最全的IntelliJ IDEA For Mac快捷键!快来收藏吧!

    原标题:史上最全的IntelliJ IDEA For Mac快捷键!快来收藏吧! IntelliJ IDEA 2020 for Mac适用于JVM的功能强大且符合人体工程学的IDA! IDEA对新手来 ...

  9. IntelliJ IDEA 15 MAC破解版

    前言:IntelliJ IDEA被认为是当前Java开发效率最快的IDE工具.它整合了开发过程中实用的众多功能,几乎可以不用鼠标可以方便的完成你要做的任何事情,最大程度的加快开发的速度.简单而又功能强 ...

最新文章

  1. Notes-stringr-part2
  2. spring25:@Pointcut管理和定义切入点
  3. 机器学习系列之神经网络入门基础知识
  4. MySQL运维知识点_mysql运维必备知识点(转载至其他作者)
  5. Javascript提升阶段学习
  6. 一开电脑都是广告,请问怎么永久关闭?
  7. ubuntu上安装rsync+sersync
  8. 原生js双向数据绑定
  9. 自己的Linux用户
  10. 阶段5 3.微服务项目【学成在线】_day01 搭建环境 CMS服务端开发_17-页面查询接口定义-定义模型-需求分析和模型类...
  11. 巧用JSON.stringify()生成漂亮格式的JSON字符串
  12. Maya2018插件安装
  13. 【李沐精读GNN论文总结】A Gentle Introduction to Graph Neural Networks
  14. 地理工具 | EXCEL读取照片EXIF,并在地图上标注拍摄地点
  15. TOEFL wordlist 25
  16. 访问者模式 Visitor
  17. 立下19年的flag,跪着也要完成!
  18. IDA Python路径问题
  19. Chrome+SwitchySharp+SSH 或者 Firefox+AutoProxy+SSH
  20. nTrun(快速启动软件) V2.0.1 简体中文绿色版是什么

热门文章

  1. selenium查找文本_在Selenium中查找具有链接文本和部分链接文本的元素
  2. maven原型_创建自定义Maven原型
  3. Spring Boot和Apache Camel
  4. tomee_微服务系列:MicroProfile和Apache TomEE
  5. vertx rest 跨域_在基于简单Vertx Rest的应用程序上为REST资源设置基本响应HTTP标头...
  6. maven项目 jetty_如何使用Java,Maven,Jetty创建Web应用程序项目
  7. activemq消息持久化_将ActiveMQ持久消息传递性能提高25倍
  8. maven junit测试_使用Maven Failsafe和JUnit @Category将集成测试与单元测试分开
  9. tomee_一罐将其全部统治:Apache TomEE + Shrinkwrap == JavaEE引导
  10. jolokia_Hawtio和Jolokia的Hibernate统计