`

JUnit学习笔记 EasyMock介绍

阅读更多
EasyMock是一种模拟测试的框架,用他来辅助模拟测试。当在测试过程中一些复杂的对象生成相当麻烦、费时或者根本无法生成时,可以用模拟的对象来代替真实的对象。EasyMock框架就用来方便的生成这些模拟的对象。

使用例子:
@Test  
public void testAddWithMock(){   
    //1.创建模拟对象   
    demo = EasyMock.createMock(IMathDemo.class);//EasyMock默认为接口生成模拟对象,如果需为类生成模拟对象需下载扩展包EasyMock Class Extension    
       
    //2.expect 记录   
    EasyMock.expect(demo.add(1, 2)).andReturn(3).times(2);   
    EasyMock.expect(demo.div(6, 3)).andReturn(2);   
    //3.replay 回放   
    EasyMock.replay(demo);   
               //4.进行测试   
    assertEquals(3, demo.add(1,2));   
    assertEquals(3, demo.add(1,2));   
    assertEquals(2, demo.div(6,3));   
    //5.verify 检查EasyMock的执行情况   
    EasyMock.verify(demo);   
    //EasyMock是根据 记录+回放  测试+检查 的过程   
}   
  
@Test(expected=RuntimeException.class)   
public void testAddWithMockException(){   
    demo = EasyMock.createMock(IMathDemo.class);   
               //模拟方法抛出异常   
    EasyMock.expect(demo.add(-1,-1)).andThrow(new RuntimeException("运行时错误!!"));   
    EasyMock.replay(demo);   
    demo.add(-1, -1);   
    EasyMock.verify(demo);   
}
 

EasyMock采用“记录-回放”的工作模式,基本使用步骤:
1.创建Mock对象的控制对象Control(EasyMock类)
2.从控制对象中获取所需要的Mock对象
3.记录测试方法中使用到的参数值和返回值和需要执行的次数,抛出什么异常等。
4.设置Control对象到"回放"模式
5.进行测试
6.测试完毕后,确认对象已经执行了刚才定义的所有操作。

具体的使用方法可以参见我的一遍收藏文章

分享到:
评论

相关推荐

    Junit学习笔记~

    Junit学习笔记,希望有用~~~~~~~~~~~~~~~~~~~~~~

    JUnit学习笔记

    这篇博客“JUnit学习笔记”可能是博主GreatJone在深入学习JUnit过程中所做的记录和总结,包括了JUnit的基本概念、核心组件、使用方法以及一些高级特性。 首先,JUnit的核心理念是基于断言的测试,即编写特定的测试...

    Junit学习笔记

    本学习笔记将深入探讨JUnit的核心概念、使用方法以及其在实际开发中的应用。 一、JUnit简介 JUnit是开源项目,由Ernst Konig和Kent Beck发起,最初是针对Java平台设计的。现在,JUnit已经成为Java开发者进行单元...

    Junit+EasyMock单元测试使用资料以及案例分析

    **EasyMock介绍** EasyMock是一个模拟对象库,它允许开发者创建模拟对象来代替依赖于其他组件的复杂对象,以便进行隔离测试。通过EasyMock,你可以预定义模拟对象的行为,如返回特定值或抛出异常,然后在测试中验证...

    Junit+EasyMock单元测试的jar包

    为了充分利用这些库,开发者需要具备Junit和EasyMock的基本知识,或者自行寻找额外的资源来学习如何使用这两个工具。 总的来说,Junit和EasyMock是Java开发中不可或缺的单元测试工具。通过理解它们的功能和使用方法...

    junit4.4.jar +easymock3.0.jar

    标题中的"junit4.4.jar +easymock3.0.jar"提及了两个重要的Java测试库:JUnit 4.4和EasyMock 3.0。这些是用于开发过程中的单元测试的关键工具。 JUnit是Java编程语言中最广泛使用的单元测试框架之一。它允许开发者...

    JUnit学习笔记之NetBeans入门篇

    本篇笔记将带你进入JUnit与NetBeans的结合使用世界,让你在NetBeans中更高效地进行单元测试。 首先,我们需要安装JUnit库到NetBeans。在NetBeans中,打开“工具”菜单,选择“库”,然后点击“新建库”。在弹出的...

    JUnit and EasyMock

    ### 关于JUnit与EasyMock JUnit与EasyMock是Java领域中进行单元测试的主导工具,它们为软件开发人员提供了一种提升生产力并确保代码质量的有效途径。本文将深入解析JUnit和EasyMock的核心概念、生命周期以及如何...

    Junit学习.rar

    这个“Junit学习.rar”压缩包显然包含了关于JUnit从3.8到4.9版本的学习资料,包括可能的操作手册、教程文档以及个人的学习笔记。以下是基于这些资源可能涵盖的一些关键知识点: 1. **JUnit基础知识**:了解JUnit的...

    EasyMock介绍和使用

    【EasyMock介绍】 EasyMock是一款强大的Java模拟框架,它允许开发者在进行单元测试时创建和控制对象的行为。这个工具使得测试更加独立,可以隔离被测试代码与其他依赖的系统,从而提高测试的效率和质量。EasyMock的...

    powermock-easymock-junit-1.5.4.zip

    PowerMock与EasyMock是Java单元测试领域中的两个重要库,它们与JUnit结合使用,能够帮助开发者在测试过程中模拟复杂的对象行为和系统环境。这个压缩包"powermock-easymock-junit-1.5.4.zip"很可能包含了这三个库的...

    junit个人学习笔记

    现在的版本都4.3.1,3.8.1的感觉好象不好找,虽然www.junit.org能够找到,但对我们这种英语不好的来说,还是不好找,再说了,现在好多的教程都是以3.8.1来写的,所以在这里把我找到的3.8.1传上来供大家以后下载 博文链接:...

    Junit 4.0 学习笔记

    《Junit 4.0 学习笔记》 JUnit 是一个广泛使用的Java编程语言的单元测试框架,尤其在敏捷开发和持续集成环境中扮演着至关重要的角色。本文将深入探讨JUnit 4.0版本的主要特性、核心概念以及如何有效利用它进行单元...

    JUnit4学习笔记

    法在每个测试方法执行之后都要执行一次,相当于 JUnit3 中的 tearDown 方法,用于清理测试环境。@Test:这是 JUnit4 中的核心元数据,用于标记测试方法。当 JUnit4 运行测试时,会查找所有带有 @Test 注解的方法,并...

    北京圣思园 junit全套笔记及源码

    在“北京圣思园 junit 全套笔记及源码”中,你将深入学习 JUnit 的各种功能和最佳实践。以下是一些关键知识点: 1. **安装与配置**:首先,你需要了解如何在你的开发环境中安装 JUnit,通常是通过 Maven 或 Gradle ...

    Junit良葛格学习笔记

    "Junit良葛格学习笔记"很可能包含了一系列关于如何有效利用JUnit进行测试的教程和示例。下面将详细阐述JUnit的核心概念、功能以及在实际开发中的应用。 1. **JUnit简介**: JUnit是由Ernst Leiss和Kent Beck开发的...

    Junit4学习笔记—入门篇.pdf

    ### JUnit4学习笔记——入门篇 #### 一、配置MyEclipse在项目中引入JUnit4.jar包 在使用JUnit4进行单元测试之前,首先需要确保开发环境已正确配置JUnit库。对于使用MyEclipse IDE的开发者来说,可以通过以下步骤...

    EasyMock 3.1相关jar(所有)

    还在为EasyMock使用时出异常而...本压缩包包含除了Junit4之外easyMock3.1所用到的所有相关jar包,junit4可自己导入eclipse自带的即可 本压缩包包括: asm.jar cglib.jar objenesis.jar等 其中asm与cglib已兼容,放心使用!

    JUnit入门笔记~

    通过学习和实践这些基本知识,你将能够熟练运用JUnit进行单元测试,提升代码质量和开发效率。在阅读提供的"笔记_JUnit.docx"文档时,你会找到更详细的信息,包括具体示例和进阶话题,帮助你深入理解JUnit的使用。

Global site tag (gtag.js) - Google Analytics