Junit使用的超简单介绍

发表于:2018-12-07 16:00

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:herdyouth    来源:CSDN

  前言:我对Junit了解的并不多,只是今天突然听到有人提到了它,而且现在时间还早,所以我觉得我不妨更一篇关于Junit4的超级超级简单的用法,全当是为了省去看官网demo的时间吧。这里仅仅谈@Test夹具。
  一、JUnit超级简介
  1 . 官网
  http://junit.org 或者 http://junit.org/junit4/
  没有比官网更权威的介绍了。
  上图中的4.12,4.11等是JUnit4的版本。JUnit3是必须继承junit.framework.TestCase类的,而且可能还需要其他一些设置。而JUnit4是不需要的。
  2. xUnit
  xUnit是一套基于测试驱动开发的测试框架,包括:
  1. PythonUnit
  2. CppUnit
  3. JUnit
  二、超简单的使用Demo
  和其他人一样,谈到JUnit的demo就喜欢用calculate类,我也不例外来以它为例吧。
  1. 编写需要被测试的java
   public class Calculate {
  public int add(int a, int b) {
  return a + b;
  }
  public int substract(int a, int b) {
  return a - b;
  }
  public int multiply(int a, int b) {
  return a * b;
  }
  public int divide(int a, int b) {
  // 这里只是最简单的测试demo,暂不做容错处理
  return a / b;
  }
  }
  2 . 导入Junit
  因为这里以Junit4为例,所以这里选Junit4
  3.编写测试类
  用来测试Calculate类中的add()方法
  4. 运行测试类
  5 . 测试结果分析
  (1). Runs:表示总共有几个测试方法,已经运行了几个;
  (2). Errors:表示抛出异常的测试方法的个数;
  (3). Failures:表示失败的测试方法的个数;
  (4). 打钩:表示通过测试方法。
  (5). 另外有个绿色的进度条表示测试成功,红色的进度条则表示测试失败。
  demo的结构:
  三、完善JUnit
  这里稍微规范一下Junit。是基于上述demo的。
  1. 在src下新建source Floder取名为test
  然后将之前的CalculateTest类连同包一起移动到test文件夹下,如下
  2. 自动添加测试方法
  假设现在要测试的类里面有很多方法,总不能一个个的手写这些方法吧,所以可以用用IDE了。使用IDE自动生成测试类。因为将上面的CalculateTest类移动到了test目录下,所以这里IDE自动生成的测试Calculate类的测试类取名叫CalculateAutoTest。
  其生成步骤如下:
  (1). 在被测试的类Calculate上右键new一个JUnit Test Case,如下。
  (2). 选择相应要测试的方法
  然后就可以看到自动生成的相应的测试方法了。
  (3). 同上右键CalculateAutoTest运行
  当然这里还没有具体实现,所以测试会失败的。
  3. 几个规范点
  (1). 测试方法必须使用@Test注解,并且方法必须是public void,不能带任何参数;
  (2). 新建一个Source Folder来存放测试代码,但是测试类的包名和被测试类的必须保持一致;
  (3). 测试单元中的每个方法必须可以独立,测试方法之间不能有任何的依赖;
  (4). 测试类最好使用Test作为类名的后缀,测试方法最好使用test作为方法名的前缀
  四、后记
  “测试用例不是用来证明你是对的,而是用来证明你没有错”,自己测试除数为0,以及预计结果不对的情况来看看errors和fails,然后体会。
  
      上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号