初识IntelliJ IDEA下JUnit单元测试

来源:互联网 发布:图像在线批处理软件 编辑:程序博客网 时间:2024/06/06 00:11

由于之前进行单元测试时,没有用JUnit测试框架,逐步接触到其后,它的功能实在是太强大了。本文主要初步介绍如何在IntelliJ IDEA上简单使用JUnit。在Android Studio上创建module时,会自动帮助我们创建测试类:



下面也按照此在IntelliJ IDEA上创建测试类,首先在IntelliJ IDEA中安装插件JUnit Generator,JUnit已经被默认安装了,然后再新建module Test,新建文件夹:lib,然后在该文件夹中放入:

junit-4.7.jar  hamcrest-core-1.3.jar(如果不引用hamcrest-core-1.3.jar,可能会报错)

然后新建一个类people,然后再新建一个放测试类的文件夹(为了和项目代码分开),位于src同目录下,命名为Test:


右击Test文件夹,Mark  Directory as Test Resources Root,会发现该文件夹颜色变了。

然后打开people类,鼠标箭头放在people类名称上,shift + Ctrl + t (Windows上的快捷键)可以创建people类的测试类:


测试类的包名称是和被测试类同包名,并且在之前创建的Test文件夹中:


说明:如果使用alt + insert 快捷键,JUnit Test ->JUnit4,生成的测试类在src下默认命名的包中:


简单看下people代码:

[java]view plain copy
 print?在CODE上查看代码片派生到我的代码片
  1. public class people {  
  2.     private int age;  
  3.     private String name;  
  4.     public people(int age, String name) {  
  5.         this.age = age;  
  6.         this.name = name;  
  7.     }  
  8.     public int getAge() {  
  9.         return age;  
  10.     }  
  11.     public String getName() {  
  12.         return name;  
  13.     }  
  14.     public void setAge(int age) {  
  15.         this.age = age;  
  16.     }  
  17.     public void setName(String name) {  
  18.         this.name = name;  
  19.     }  
  20.     public static void main(String[] args){  
  21.     }  
  22. }  
peopleTest:

[java]view plain copy
 print?在CODE上查看代码片派生到我的代码片
  1. /** 
  2.  * Created by diy_os on 2016/11/27. 
  3.  */  
  4. public class peopleTest {  
  5.     static   people people;  
  6.     @Before  
  7.     public void setUp() throws Exception {  
  8.         people = new people(22,"lios");  
  9.     }  
  10.     @After  
  11.     public void tearDown() throws Exception {  
  12.         System.out.println(people.getName()+"\n"+people.getAge());  
  13.     }  
  14.     @Test  
  15.     public void getAge() throws Exception {  
  16.     }  
  17.     @Test  
  18.     public void getName() throws Exception {  
  19.         people.setName("diy_os");  
  20.     }  
  21.     @Test  
  22.     public void setAge() throws Exception {  
  23.         people.setAge(21);  
  24.     }  
  25.     @Test  
  26.     public void setName() throws Exception {  
  27.         people p = new people(22,"lios");  
  28.         p.setName("diy_os");  
  29.         System.out.println(p.getName());  
  30.     }  
  31.     @Test  
  32.     public void main() throws Exception {  
  33.     }  
  34. }  
简单的说明下上的注解:

@Test:每一个测试单元,一定要加上@Test注解

@Before:在测试单元执行前执行,通常用来初始化数据,上面例子用来初始化people

@After:在测试单元执行后执行,用来输出结果等

看下结果:



转载自:http://blog.csdn.net/bat_os/article/details/53365938

0 0
原创粉丝点击