`
tracyhuyan
  • 浏览: 83110 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Mock static method

 
阅读更多

Mock static Class:   

 
byte[] a = {};
SetReader exp = new SetReader();

PowerMock.mockStatic(SetReader.class);       
EasyMock.expect(SetReader.parseFrom(EasyMock.aryEq(a))).andReturn(exp);
PowerMock.replay(SetReader.class);
       
PowerMock.verify(SetReader.class);

 

refer to:  http://code.google.com/p/powermock/wiki/MockStatic

 

  1. Use the @RunWith(PowerMockRunner.class) annotation at the class-level of the test case.
  2. Use the @PrepareForTest(ClassThatContainsStaticMethod.class) annotation at the class-level of the test case.
  3. Use PowerMock.mockStatic(ClassThatContainsStaticMethod.class) to mock all methods of this class.
  4. Use PowerMock.replay(ClassThatContainsStaticMethod.class) to change the class to replay mode.
  5. Use PowerMock.verify(ClassThatContainsStaticMethod.class) to change the class to verify mode.
分享到:
评论

相关推荐

    Mock初学教程

    ### Mock初学教程 #### 学习目标与背景 本文档旨在为初学者提供一份全面且易懂的Mock技术入门指南。Mock技术在软件测试领域扮演着至关重要的角色,尤其是在单元测试过程中,它帮助我们模拟复杂的依赖关系,使得...

    使用PowerMock来Mock静态函数

    3. 创建Mock:在测试方法中,使用`PowerMockito.mockStatic(Class)`来模拟整个静态类,或者使用`PowerMockito.when(Class.method()).thenReturn(value)`来指定静态方法在特定条件下的返回值。 4. 执行测试:进行正常...

    Instant Mock Testing with PowerMock.pdf

    Instant Mock Testing with PowerMock 7 Saying Hello World! (Simple) 8 Getting and installing PowerMock (Simple) 14 Mocking static methods (Simple) 22 Verifying method invocation (Simple) 28 Mocking ...

    单元测试工具——GMOCK概述

    - `method`:Mock对象中的Mock方法。 - `matcher1, matcher2, ...`:方法参数的匹配规则。 - `.With(multi_argument_matcher)`:多参数匹配规则。 - `.Times(cardinality)`:方法调用次数。 - `.InSequence...

    利用PowerMock模拟静态方法和私有方法的示例

    PowerMock允许我们使用`@PrepareForTest`注解指定需要模拟的类,并通过`PowerMockito.mockStatic`或`Mockito.when`来模拟私有方法。 下面是一段使用PowerMock模拟静态方法和私有方法的示例代码: ```java import ...

    Typemock Isolator-Developers Guide

    Enables you to mock all concrete types, interfaces and static methods and also a chain of calls Allows arbitrary calls, or rejects any method calls that were not explicitly expected Specifies ...

    PowerMockito使用demo

    3. **模拟静态方法**:在测试方法中,可以使用`mockStatic(Class<?> clazz)`来指定要模拟的静态类,然后用`when(MethodCall).thenReturn(Answer)`来定义静态方法的行为。比如,`when(S3Util.class, "getAwsConfig")....

    使用PostSharp的模拟方法和属性

    这样,在测试中,你不再需要改变原有代码,而是通过在静态方法上添加`[MockStatic]`特性来启用模拟。 ```csharp [Serializable] public class MockStaticAttribute : OnMethodBoundaryAspect { public override ...

    powermock-demo:powermock演示

    3. **模拟方法**:在测试方法内部,使用 `PowerMockito.mockStatic()` 或 `PowerMockito.when()` 来模拟静态方法,`Mockito.when()` 用于模拟非静态方法。 4. **验证行为**:使用 `Mockito.verify()` 来检查方法是否...

    cglib-2.2.2.rar

    2. **单元测试**:Mock框架如EasyMock和Mockito可以利用CGLib来模拟复杂的对象行为,方便进行单元测试。 3. **性能监控**:通过代理对象,可以在方法调用前后插入性能监控代码,以分析代码的运行效率。 4. **数据...

    cglib动态生成java类

    2. **测试**:在单元测试中,可以通过CGLib生成类的模拟对象(mock object),方便对类的方法进行模拟和测试。 3. **动态数据访问**:例如ORM框架如Hibernate,使用CGLib动态创建数据访问对象(DAO)。 总的来说,...

    junit-4.12_lib相关jar包

    3. **配置环境**:在测试环境中正确设置所有依赖项,如使用Mock对象替换真实资源。 4. **更新或排除冲突库**:如果发现库冲突,可以尝试升级到兼容版本,或者明确排除冲突的库。 理解并熟练使用JUnit 4.12,配合...

    MockingPresentation:包含 Mockito 和 PowerMock 使用示例

    - **模拟配置(Mock Configuration)**:使用 `mockStatic()`,`when()`,`thenReturn()`,`thenThrow()` 等方法来设置模拟对象的行为。 - **测试方法(Test Method)**:每个测试方法会调用待测试的代码,然后使用 ...

    Jmockit用法示例

    public void testWithMockedStaticMethod(@Mocked StaticClass staticClass) { new Expectations() {{ StaticClass.staticMethod(); result = "mocked value"; }}; // 被测试方法会调用静态方法 String ...

    Spring Boot

    2. **Mock Server**:在开发过程中,使用Mock Server可以模拟后端服务响应,有助于前端开发和接口测试。 3. **Docker**:结合Docker容器技术,可以实现Spring Boot应用的快速部署和自动化管理。 #### 结论 Spring ...

    Java编程中void方法的学习教程

    public static void printGrade(double score) { // ... } ``` 2. **调用void方法**: 调用`void`方法时,不需要使用等号(`=`)接收返回值,因为它们没有返回值。它们通常作为语句的一部分出现在代码中,后面...

    SPRING API 2.0.CHM

    MockHttpServletRequest MockHttpServletResponse MockHttpSession MockMultipartActionRequest MockMultipartFile MockMultipartHttpServletRequest MockPageContext MockPortalContext MockPortletConfig ...

    json-fake-server:创建HTTP服务器(节点JS)https的简单方法

    'test-fake-server' )const model = { port : 9090 , api : [ { method : "GET" , path : "/" , response : "Hello world" } ]}fakeServer ( model ) . then ( ( server ) => { setTimeout ( ( ) => { server . stop...

    spring-boot-reference.pdf

    Auto-configured Spring REST Docs Tests with Mock MVC Auto-configured Spring REST Docs Tests with REST Assured 43.3.20. User Configuration and Slicing 43.3.21. Using Spock to Test Spring Boot ...

Global site tag (gtag.js) - Google Analytics