用eclipse编写单元测试的时候,可以直接选中某个类,然后右键new新疆一个junit case,界面如下图1所示:

图1:新建test case

选 择图1中的JUnit Test Case,然后点击Next,在接下来的界面中,注意Source folder不要放在源文件的目录,最佳实践应该是一个test目录,并且包名与源文件同名,然后点击Next,下一个界面就是选择Test Methods,选择要测试的方法名,然后Finish,就会自动生成一些测试代码,然后就可以自己修改了。

图2:运行单元测试代码

编写完单元测试代码以后,就可以运行了,运行方法如上图2所示。

在编写单元测试代码的时候,要注意如下几个方法(非常重要,以下都是以JUnit4为例):

(1)测试方法上必须使用@Test进行修饰;

(2)测试方法必须使用public void进行修饰,并且不能带有任何的参数;

(3) 新建一个源代码目录来存放我们的测试代码,如果是maven项目的话,会生成3个目录,一个是源代码目录(src/main/java),一个是单元测试 目录(src/test/java),一个是资源目录(src/main/resources),使用maven的时候,我们把单元测试代码放在测试目录 中;

(4)测试类的包应该和被测试类的包名保持一致;

(5)测试单元中的每个方法必须可以独立测试,测试方法间不可以有任何的依赖;

(6)测试类使用Test作为类名的后缀(不是一定要这样做,这是最佳实践);

(7)测试方法使用test作为方法名的前缀(不是一定要这样做,这是最佳实践);

上面的这些注意点,如果使用eclipse自动生成的JUnit测试代码,就会发现非常符合,因为这都是最佳实践,一般都是建议这样去写,忘记写的时候,可以生成一些代码来参考下。

单元测试的目的只为了证明写的代码没有问题,即代码是对的,那么测试出现failure的原因有哪些呢,一般有如下两种情况:

(1)程序没有错,能够正常有返回结果,但是返回的结果与我们预期的不一样,即断言方法判断失败。

(2)程序本身就有错,代码运行中就报错了,比如出现除数异常、类型错误等等。

JUnit编写单元测试代码注意点小结的更多相关文章

  1. EclipseADT编写单元测试代码的步骤

    1. 写一个类 extends AndroidTestCase 2. 写一个测试方法    a.必须是public     b.必须抛出异常给操作系统 public void textAdd()thr ...

  2. python的单元测试代码编写流程

    单元测试: 单元测试是对单独的代码块分别进行测试, 以确保它们的正确性, 单元测试主要还是由开发人员来做, 其余的集成测试和系统测试由专业的测试人员来做. python的单元测试代码编写主要记住以下几 ...

  3. 编写高质量代码改善C#程序的157个建议——建议155:随生产代码一起提交单元测试代码

    建议155:随生产代码一起提交单元测试代码 首先提出一个问题:我们害怕修改代码吗?是否曾经无数次面对乱糟糟的代码,下决心进行重构,然后在一个月后的某个周一,却收到来自测试版的报告:新的版本,没有之前的 ...

  4. 使用Junit进行单元测试

    使用Junit进行单元测试 一.目的和要求 JUnit是一款由Erich Gamma(<设计模式>的作者)和Kent Beck(极限编程的提出者)编写的开源的回归测试框架,供Java编码人 ...

  5. java如何使用JUnit进行单元测试

    注:所有内容都是在eclipse上实现,关于eclipse的安装和jdk的安装配置,请看:http://www.cnblogs.com/fench/p/5914827.html 单元测试是什么? 百度 ...

  6. JUnit 4 单元测试

    Individual Project ——JUnit 4 单元测试 学习到JUnit单元测试,我拿来测试之前写过的一个计算器(两个依存类:Calc.java CalcFunction.java).代码 ...

  7. Android之如何使用JUnit进行单元测试

    转的:http://www.blogjava.net/qileilove/archive/2014/05/19/413824.html Android中如何使用JUnit进行单元测试 在我们日常开发a ...

  8. Spring(3)—— Junit框架单元测试

    Junit主要用于单元测试,即白盒测试.它是一个开源的由JAVA开发的一个用于测试的框架. Junit的几个基本概念:TestCase,TestSuite,TestFixtrue TestCase:代 ...

  9. Intellij Idea系列之导Jar包与编写单元测试(二)

     Intellij Idea系列之导Jar包与编写单元测试(二) 一.初衷 对于很多的初学者来说,Intellij如何导入jar包感到很迷惑,甚至在网上搜过相关文章之后还是云里雾里,本博客通过图文并茂 ...

随机推荐

  1. (转)cygwin包管理器apt-cyg

    通过终端安装apt-cyg之前选要安装以下软件包 wget tar gawk bzip2 Cygwin终端安装 wget http://apt-cyg.googlecode.com/svn/trunk ...

  2. 【推荐】nodeJS后台守护进程-forever

    A simple CLI tool for ensuring that a given node script runs continuously (i.e. forever) 本地执行: npm i ...

  3. Fiddler抓包6-get请求(url详解)【转载】

    本篇转自博客:上海-悠悠 原文地址:http://www.cnblogs.com/yoyoketang/tag/fiddler/ 前言 上一篇介绍了Composer的功能,可以模拟get和post请求 ...

  4. 利用NPOI组件产Excel完整操作

    最终还是要使用NPOi了.刚开始做的是用com组件,发现如果本机不按照excel就不能使用,后来把其中一支改为了用Itextsharp产生pdf,但是还有几支批次要产生Excel,只能改用NPOI了. ...

  5. php升级版本

    Centos下Yum安装PHP5.5,5.6,7.0 默认的版本太低了,手动安装有一些麻烦,想采用Yum安装的可以使用下面的方案: 1.检查当前安装的PHP包 yum list installed | ...

  6. dubbo的中文官网

    https://dubbo.gitbooks.io/dubbo-user-book/content/preface/background.html

  7. 【ASP.NET】 中 system.math 函数使用

    1 /* 字段 */ 2 Math.E; //2.71828182845905 3 Math.PI; //3.14159265358979 4 5 /* 静态方法 */ 6 Math.Abs; //绝 ...

  8. python2 to3

    http://blog.csdn.net/zhzh213/article/details/53842790 有个内部工具叫做2to3.py位置在Python3/tool/script文件夹. 首先CD ...

  9. Shell--变量的显示与设置、环境变量、语系变量

    1.变量的显示与设置:echo,unsetecho:显示一段文字,也可以读出变量内容并打印出来  格式echo $变量或者echo ${变量}语 法:echo [-neE][字符串]或 echo [- ...

  10. RedHat虚拟机相关操作

    在VM虚拟机中安装完Redhat系统之后 如果需要用secureCRT连接linux系统的话 操作步骤如下: 1.进入linux系统,在终端输入ifconfig(注意,不是windows的ipconf ...