Java基础教程:IDEA单元测试

环境配置

  使用idea IDE 进行单元测试,首先需要安装JUnit 插件。

安装JUnit插件步骤

  File-->settings-->Plguins-->Browse repositories-->输入JUnit-->选择JUnit Generator V2.0安装。

  

  安装完成后需要重新启动IDEA。

使用JUnit插件

  在需要进行单元测试的类中,使用快捷键alt+insert,选择JUnit test,选择JUnit4。

  

单元测试

测试流程

  如下是一个较为完成的测试流程

    @BeforeClass
public static void setUpBeforeClass() throws Exception { }
@AfterClass
public static void setUpAfterClass() throws Exception { } @Before
public void before() throws Exception { } @After
public void after() throws Exception { }
@Test
public void test(){
System.out.println("艾力");
}

  说明:

  1、@BeforeClass所修饰的方法在所有方法加载前执行,而且他是静态的在类加载后就会执行该方法,在内存中只有一份实例,适合用来加载配置文件。

  2、@AfterClass所修饰的方法在所有方法执行完毕之后执行,通常用来进行资源清理,例如关闭数据库连接。

  3、@Before和@After在每个测试方法执行前都会执行一次。

  4、测试方法上面必须使用@Test注解进行修饰

  5、测试方法必须使用public void 进行修饰,不能带有任何参数

  6、测试单元中的每一个方法必须独立测试,每个测试方法之间不能有依赖

常用注解

@Test(excepted=XX.class) 在运行时忽略某个异常。

@Test(timeout=毫秒) 允许程序运行的时间。

@Ignore 所修饰的方法被测试器忽略。

@RunWith 可以修改测试运行器 org.junit.runner.Runner

参考链接

Java基础教程:IDEA单元测试的更多相关文章

  1. Java基础教程(18)--继承

    一.继承的概念   继承是面向对象中一个非常重要的概念,使用继承可以从逻辑和层次上更好地组织代码,大大提高代码的复用性.在Java中,继承可以使得子类具有父类的属性和方法或者重新定义.追加属性和方法. ...

  2. Java基础教程(12)--深入理解类

    一.方法的返回值   当我们在程序中调用方法时,虚拟机将会跳转到对应的方法中去执行.当以下几种情况发生时,虚拟机将会回到调用方法的语句并继续向下执行: 执行完方法中所有的语句: 遇到return语句: ...

  3. Java基础教程:注解

    Java基础教程:注解 本篇文章参考的相关资料链接: 维基百科:https://zh.wikipedia.org/wiki/Java%E6%B3%A8%E8%A7%A3 注解基础与高级应用:http: ...

  4. Java基础教程:网络编程

    Java基础教程:网络编程 基础 Socket与ServerSocket Socket又称"套接字",网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个s ...

  5. Java基础教程(5)--变量

    一.变量 1.变量的定义   正如上一篇教程<Java基础教程(4)--面向对象概念>中介绍的那样,对象将它的状态存在域中.但是你可能仍然有一些疑问,例如:命名一个域的规则和惯例是什么?除 ...

  6. Java基础教程:Lambda表达式

    Java基础教程:Lambda表达式 本文部分内容引用自OneAPM:http://blog.oneapm.com/apm-tech/226.html 引入Lambda Java 是一流的面向对象语言 ...

  7. Java基础教程:泛型基础

    Java基础教程:泛型基础 引入泛型 传统编写的限制: 在Java中一般的类和方法,只能使用具体的类型,要么是基本数据类型,要么是自定义类型.如果要编写可以应用于多种类型的代码,这种刻板的限制就会束缚 ...

  8. Java基础教程:多线程基础(1)——基础操作

    Java:多线程基础(1) 实现多线程的两种方式 1.继承Thread类 public class myThread extends Thread { /** * 继承Thread类,重写RUN方法. ...

  9. Java基础教程:反射基础

    Java基础教程:反射基础 引入反射 反射是什么 能够动态分析类能力的程序称为反射. 反射是一种很强大且复杂的机制. Class类 在程序运行期间,Java运行时系统始终为所有对象维护一个被称为运行时 ...

随机推荐

  1. spark操作hive方式(scala)

    第一种方式: def operatorHive: Unit = { Class.forName("org.apache.hive.jdbc.HiveDriver") val url ...

  2. Hive中的数据库、表、数据与HDFS的对应关系

    1.hive数据库 我们在hive终端,查看数据库信息,可以看出hive有一个默认的数据库default,而且我们还知道hive数据库对应的是hdfs上面的一个目录,那么默认的数据库default到底 ...

  3. sql server select 1 from 的作用

    select 1 from table 语句中的1代表什么意思   在这里我主要讨论的有以下几个select 语句: doo_archive表是一个数据表,表的行数为4行,如下: 分别用三条selec ...

  4. MongoDB新存储引擎WiredTiger实现(事务篇)

    导语:计算机硬件在飞速发展,数据规模在急速膨胀,但是数据库仍然使用是十年以前的架构体系,WiredTiger 尝试打破这一切,充分利用多核与大内存时代,开发一种真正满足未来大数据管理所需的数据库.本文 ...

  5. jQuery相关方法6----三大系列属性

    一.获取和设置元素的宽和高------width( )方法和height()方法 <!-- 点击按钮,设置div的宽和高为原来的两倍 --> <script src="ht ...

  6. 洛谷P2305 [NOI2014]购票 [DP,树状数组]

    传送门 思路 显然是树形DP,显然是斜率优化,唯一的问题就是该怎么维护凸包. 套路1:树上斜率优化,在没有这题的路程的限制的情况下,可以维护一个单调栈,每次加入点的时候二分它会加到哪里,然后替换并记录 ...

  7. vue pc element-ui class

    按需引入element-ui npm install babel-plugin-component -D   先安装这个 然后在babelrc中配置: 在plugins中加入红色框的那一部分 [ &q ...

  8. 小程序 之嵌套循环修改index与item

    <block wx:for="{{menu}}" wx:key="index"> <view class="cate-item {{ ...

  9. [后渗透]Linux下的几种隐藏技术【转载】

    原作者:Bypass 原文链接:转自Bypass微信公众号 0x00 前言 攻击者在获取服务器权限后,会通过一些技巧来隐藏自己的踪迹和后门文件,本文介绍Linux下的几种隐藏技术. 0x01 隐藏文件 ...

  10. phpmyadmin个版本漏洞

    phpMyadmin各版本漏洞 一: 影响版本:3.5.x < 3.5.8.1 and 4.0.0 < 4.0.0-rc3 ANYUN.ORG 概述:PhpMyAdmin存在PREGREP ...