`
3806850
  • 浏览: 93940 次
  • 性别: Icon_minigender_2
  • 来自: 沈阳
社区版块
存档分类
最新评论

junit4 单元测试

阅读更多
    1、在最新的JUnit 4中,由于有了Annotation的支持,我们的测试方法不需要再以testXxx标识了,而是写上一个@Test标注即可。

     2、甚至MathTest类也不必继承自TestCase。你也许会想到,不继承自TestCase就无法调用assertXxx方法了,正因为如此, 所有的assertXxx方法全部以静态方法被放入了Assert类,使用Assert.assertXxx()调用。

     3、etUp()和tearDown()方法也依赖@Before和@After标记,这样做的最大的好处是在继承体系内不必担心忘记了在 setUp()方法中调用父类的super.setUp()方法,JUnit框架会自动处理父类的@Before和@After标记的方法。

      4、JUnit 4可以用expected=Exception.class来期待一个预期的异常
  列:
 @Test(expected=ArithmeticException.class)
public void doDiv0() {
    new Math().div(127, 0);
}


      5、对于非常耗时的测试,@Test还有一个timeout来标识该方法最长执行时间,超过此时间即表示该测试方法失败
@Test(timeout=1)
public void doLongTimeTask() {
    double d = 0;
    for(int i=1; i<10000000; i++)
        d+=i;
}


以上方法若执行时间超过1ms则测试失败,由于依赖CPU的执行速度,在不同的机器上测试结果也不同

       6、JUnit 4另一个较大的变化是引入了@BeforeClass和@AfterClass,它们在一个Test类的所有测试方法执行前后各执行一次。这是为了能在 @BeforeClass中初始化一些昂贵的资源,例如数据库连接,然后执行所有的测试方法,最后在@AfterClass中释放资源。由于@BeforeClass和@AfterClass仅执行一次,因此它们只能标记静态方法,在所有测试方法中共享的资源也必须是静态引用

       7、由于Java 5的自动Box/Unbox特性,在调用assertEquals()时要特别注意,如果你传入:
 
assertEquals(100F, 100);
则按照自动Box变为:
assertEquals(new Float(100F), new Integer(100));
测试失败,因为Float类和Integer类不是同一类型。
因此要特别注意float和double的测试。事实上对float和double应使用
assertEquals(float, float, float delta);
assertEquals(double, double, double delta);


     8、@Ignore 标签会告诉junit4忽略它所标注的方法
分享到:
评论

相关推荐

    Junit4单元测试必备入门教程

    JUnit单元测试的重要性 ------------------- 单元测试是java开发必备技能,它可以确保代码的正确性和可靠性。JUnit是一个流行的单元测试框架,它可以帮助开发者快速地编写和执行单元测试。 JUnit4的改进 ---------...

    junit4单元测试

    JUnit4是Java编程语言中最广泛使用的单元测试框架之一,它为开发者提供了一种方便、高效的方式来验证代码的正确性。这个压缩包文件包含了JUnit4的相关库,使得开发人员能够轻松地在他们的项目中引入单元测试功能。...

    Junit4单元测试

    **Junit4单元测试详解** 单元测试是一种软件开发中的重要实践,它允许开发者对程序的各个独立组件进行验证,确保它们在孤立环境中按照预期工作。JUnit是Java编程语言中最广泛使用的单元测试框架,而Junit4是其一个...

    junit4 单元测试源码

    【标题】"junit4 单元测试源码"涉及的是Java编程中单元测试的重要工具JUnit4的使用,这是对代码进行验证和调试的关键部分。JUnit4是JUnit框架的一个版本,它提供了更灵活的注解、测试套件管理和断言方式,使得编写...

    Junit4单元测试源码

    多数Java的开发环境都已经集成了JUnit作为单元测试的工具。 [1] JUnit是由 Erich Gamma 和 Kent Beck 编写的一个回归测试框架(regression testing framework)。Junit测试是程序员测试,即所谓白盒测试,因为...

    在Eclipse中使用JUnit4进行单元测试

    在Eclipse中使用JUnit4进行单元测试是一种常见的Java开发实践,它可以帮助开发者确保代码的正确性和稳定性。单元测试是软件开发中的重要环节,通过编写针对代码各个独立模块的测试用例,可以验证代码功能是否按预期...

    junit4单元测试实例

    本篇文章将深入探讨JUnit4的单元测试实例,帮助你更好地理解和应用这个工具。 一、JUnit4简介 JUnit4相较于之前的版本,引入了注解(Annotation)机制,极大地简化了测试用例的编写。例如,`@Test`注解用于标记测试...

    Junit4单元测试个人笔记

    《Junit4单元测试个人笔记》 单元测试是软件开发过程中的重要环节,它能确保代码的正确性和稳定性。本文主要介绍了使用Junit4进行单元测试的一些规范和Eclipse中的应用。 首先,遵循一定的测试规范至关重要。测试...

    junit4单元 测试

    JUnit4是Java编程语言中最广泛使用的单元测试框架之一,它为开发者提供了强大的工具来编写和运行可重复的、可靠的测试代码。JUnit4引入了许多新特性,显著提升了测试的灵活性和可维护性。以下是对JUnit4核心知识点的...

    Junit4单元测试入门例子

    Junit4作为Java领域最常用的单元测试框架,为开发者提供了方便、高效的测试工具。本文将深入探讨如何使用Junit4对名为Calculate的类进行单元测试,包括其加减乘除四个方法。 首先,我们需要了解Junit4的基本结构和...

    反射和注解模拟JUnit4单元测试例子

    介绍如何利用反射和注解去简单的模拟JUnit4单元测试的使用,之所以选择JUnit4是因为4.0以后最大的改进就是使用了注解。需要注意的是这里并不是完全的模拟,只是简单实现了一下Runner类和JUnit注解相关的工作流程。...

    单元测试之道(Java):使用JUnit进行单元测试

    单元测试之道(Java):使用JUnit进行单元测试。单元测试是提高代码质量的有效手段,但大部分开发人员由于种种原因都不乐意进行单元测试。

    spring+mybatis+junit4单元测试

    改代码是我的我的一个项目自己写完后自测所以就写了这个junit的单元测试类,以及可能会遇到的一些问题,以及其中的一些经验,项目用的是spring + mybatis。我写的这个测试类基本概括了单元测试的基本用法,只要按照...

    JUnit4单元测试入门详解.pdf

    总之,JUnit 4作为Java单元测试的重要工具,通过引入注解等特性简化了测试用例的编写,并且在实际开发和测试中带来了极大的便利。对于Java开发者而言,掌握JUnit 4的使用是提高代码质量和开发效率的重要技能之一。

    单元测试利器JUnit4

    JUnit4作为Java平台上最流行的单元测试框架,极大地简化了测试代码的编写和执行。本篇将深入探讨JUnit4的相关知识点,帮助你更好地掌握这个强大的工具。 1. JUnit4简介: JUnit4是由Ernst Kuhr和Kent Beck开发的...

    junit4单元测试报错:method initializationerror not found

    junit4单元测试报错:method initializationerror not found 缺少jar包导致,总共需要三个jar包:junit-4.11.jar,hamcrest-core-1.3.rc2.jar,hamcrest-library-1.3.rc2.jar,都在压缩包里了。

Global site tag (gtag.js) - Google Analytics