当前位置:首页 > 开发 > 编程语言 > 编程 > 正文

junit4今天遇到的问题

发表于: 2011-03-08   作者:asialee   来源:转载   浏览次数:
摘要:        昨天很奇怪的发现junit上面的annotation都没有生效,然后也看不出来问题,最后检查是发现我使用的是junit4,但是继承了TestCase,在继承了TestCase后好像所有的注解都会生效。        总结一句就是junit4不能继承TestCas

       昨天很奇怪的发现junit上面的annotation都没有生效,然后也看不出来问题,最后检查是发现我使用的是junit4,但是继承了TestCase,在继承了TestCase后好像所有的注解都会生效。

       总结一句就是junit4不能继承TestCase。 什么时候有时间了看下源码,我感觉它应该是根据发射如果发现是TestCase的子类,那么就按照junit3的方式进行处理了。

 

下面再列举下junit3和4的区别:

 

        这两个版本最大的区别在JUnit3.x中测试必须继承 TestCase,并且每个方法名必须以test 开头。比如:testMethod1()而在JUnit4 .x中不必继承 TestCase,采用了注解的方式。只要在测试的方法上加上注解@Test 即可,从而不必再遵循以前的一些显式约定和反射定位测试;在JUnit4 .x中如果继承 了TestCase,注解就不起作用了。并且有很重要的一点就是在JUnit4 .x中继承 了 TestCase后,在OutLine视图中测试单个方法时,结果整个类都run 了。还有一点就是,在3.x中需要实现setUp和tearDown方法,而在4.x中无需这样,可以自定义需要在测试前和测试后的方法,在方法前加上 @before,@after就可以了。所以在JUnit4 .x不必继承 TestCase用注解即可对单个方法进行测试。

 

 

JUnit3  JUnit4
必须引入类TestCase
import junit.framework.TestCase;
必须引入
import org.junit.Test ;
import static org.junit.Assert.*;
必须 继承 类TestCase
class BaseClassTest extends TestCase
不需要
测试方法必须以test 开头
public void testMethod ()
不需要,
但是类开始的时候要标记 @Test
通过assert*方法来判断结果
assertTrue(baseClass.method ().equals(“test .junit.BaseClass”));

junit4今天遇到的问题

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
线上 15:32:36 搜索出现问题: INFO: [feed] webapp=/solr path=/select params={fl=id&sort=last_re
select ( select count ( * ) from YM_products where 1 = 1 and oldOrderDate >= ' 2010-05-09
今天在写helper的代码时遇到了这样一个问题,用了下面的代码: def welcome puts "mathsfan" end 然
  今天,运维组的同学来找我,说是备份池的文件描述没有显示出来,而且是从20号开始就不能显示,
string(92) "select pid from tableName where pid in (?) and ctime <= ? order by ctime desc
opacity这个属性的作用是设置元素的透明度的问题的.不是一个很常用的属性,却是一个不得不注意的会引
今天过来逛一圈,结果发现个问题,不知道算不算是个小bug. 点击上面标签部分(入门),显示共三页,
总结:先后遇到libz库文件没有正确的链接和pcre库文件没有正确的链接 1./configure后提示需要zlib 2.
1、源代码中类的关系: 类AA从Ext.Panel中继承 类BB从AA中继承 类CC从BB中继承 2、问题描述 a、第一
安装apache中遇到 的问题 ·首先下载一个apache的安装文件,按照步骤next ·在“Network Domain(e.g.s
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号