zoukankan      html  css  js  c++  java
  • Junit4与junt3并存时产生的问题

    目前的项目里用junit写单元测试,使用的是junit4,由于大部分开发之前使用的都是junit3,对junit4还不是很熟悉,所以出现了junit3和4混合使用的情况,导致发生了一些问题,这里列举一下。

    1.测试类继承了TestCase,方法名是test开头,加Ignore标签,这时Ignore标签失效。错误代码示例:

    test.java
    1
    2
    3
    4
    5
    6
    7
    8
    
    public MyClassTest extends TestCase {
    
        @Test
        @Ignore
        public void testMyMethod() throws Exception {
            // some code
        }
    }
    

    在junit3里,测试类必须继承TestCase,方法必须是以test开头;而在junit4里面,无需继承TestCase类,方法名也不需要test开头,只需要在每个方法前加上@Test标签即可。如果是继承TestCase,方法名以test开头,则junit会认为是junt3的写法,而使得junit4的标签失效。

    2.测试类继承了TestCase,方法前加上@Test标签,方法名不以test开头,该方法不会被junit执行。

    test.java
    1
    2
    3
    4
    5
    6
    7
    
    public MyClassTest extends TestCase {
    
        @Test
        public void should_test_my_method() throws Exception {
            // some code
        }
    }
    

    用于使用了@Test标签,则方法名可以不需以test开头,但该测试类由于继承了TestCase,所以默认是使用了junit3的契约,所以方法名必须以test开头,否则junit不认,即使是加上了@Test标签。

  • 相关阅读:
    图片的切换
    DOM查询
    表单
    《激素小史》读后感 读书笔记
    《比利时的哀愁》读后感 读书笔记
    《大宋之变》读后感 读书笔记
    《人体简史》读后感 读书笔记
    《全球房地产》读后感 读书笔记
    《失落的管理艺术》读后感 读书笔记
    《成为福克纳》读后感 读书笔记
  • 原文地址:https://www.cnblogs.com/kingzzm/p/3325363.html
Copyright © 2011-2022 走看看