关键词:mock private的域或方法 invoke
源类清单
参考<一>的例子,Now方法是私有的
/**
* 演示mock private的域或方法
*/
public class DateUtil {
......
private int count;
public int getCount(){
return this.count;
}
private static final Date now() {
return new Date();
}
......
}
/**
* 演示mock private的域或方法
*/
public class DateUtilTest {
/**
* Mock某个类私有方法
*/
@Test
public void testGetCurrentDateStr() {
//DateUtil.class,要Mock的类
new Expectations(DateUtil.class) {
{
//执行DateUtil的now方法
invoke(DateUtil.class,"now");
//期望方法返回的结果
result = mockDate();
}
};
Assert.assertEquals("2010-07-22 15:52:55", DateUtil.getCurrentDateStr());
}
/**
* mock 某个类的私有属性
*/
@Test
public void testPrivateFiled() {
final DateUtil dateUtil =new DateUtil();
new Expectations(dateUtil){
{
this.setField(dateUtil, "count", 2);
}
};
Assert.assertEquals(2, dateUtil.getCount());
}
小结
mock 某个类的私有方法,用invoke(mock的类或实例,方法名,方法的参数列表)
分享到:
相关推荐
直接配置即可.<br><br>以下是一些相关说明.<br><br><br>数据库脚本<br>create table HUBO_USER<br>(<br> ID VARCHAR2(32) not null,<br> NAME VARCHAR2(100),<br> BIRTHDAY DATE,<br> PASSWORD VARCHAR2(100),<br> ...
<br>saaj.jar<br>serializer-2.7.0.jar<br>servlet.jar<br>servlet-api.jar<br>slf4j-api-1.3.1.jar<br>slf4j-simple-1.3.1.jar<br>smtp.jar<br>soap.jar<br>spring.jar<br>spring-mock.jar<br>standard.jar<br>...
aop.jar<br>spring-beans.jar<br>spring-context.jar<br>spring-core.jar<br>spring-dao.jar<br>spring-hibernate.jar<br>spring-jdbc.jar<br>spring-mock.jar<br>spring-orm.jar<br>spring-remoting.jar<br>spring-...
可以用来Mock JAVA代码中的静态方法
>RESTFUL是一种网络应用程序的设计风格和开发方式,基于HTTP,可以使用XML格式定义或JSON格式定义。RESTFUL适用于移动互联网厂商作为业务使能接口的场景,实现第三方OTT调用移动网络资源的功能,动作类型为新增、...
导入Maven依赖与junit一起工作 < dependency> < groupId>com.didiglobal.thriftmock</ groupId> < artifactId>thrift-mock-server4junit</ artifactId> < version>1.0.2</ version> </ dependency> 在没有junit的...
在Java测试领域,有时我们需要对不可mock对象,如静态方法或final类,进行模拟以便于测试。PowerMock就是这样一款强大的工具,它扩展了EasyMock的功能,允许开发者在单元测试中模拟静态方法、构造器、final类和方法...
Dear 'Ajax in Action' Readers,<br><br>This zip file gathers together the source code for the... Your feedback is welcome.<br><br>Regards,<br><br>Dave Crane<br>Gloucestershire UK<br>November 2005 <br><br>
本篇将详细讲解如何使用Spring Boot与MyBatis框架结合,对Mock平台进行改造。 首先,Spring Boot是基于Spring框架的简化版本,它内置了各种常用组件,如Tomcat服务器、自动配置功能等,大大简化了Java Web应用的...
在实际项目中,你可能还需要使用`@Spy`注解创建部分模拟对象,或使用`verify`方法检查方法是否被正确调用。同时,可以结合Spring的`@Autowired`和`@Qualifier`注解来处理多bean注入的情况。 通过这样的方式,Spring...
<artifactId>jmockit</artifactId> <version>1.47</version> <scope>test</scope> </dependency> --> </dependencies> ``` 这里,我们添加了 JMock 的 JUnit4 版本。如果你的项目使用 JUnit5,你需要添加对应的 ...
有时候需要根据不同的条件返回不同的结果,这时可以使用`It.Is<T>`或`It.IsAny<T>`等方法来实现。 - **使用Is<T>来指定条件** ```csharp customer.Setup(x => x.SelfMatch(It.Is<int>(i => i % 2 == 0)))....
[CDATA[' + point + ']]></wps:LiteralData></wps:Data></wps:Input></wps:DataInputs><wps:ResponseForm><wps:RawDataOutput><ows:Identifier>output</ows:Identifier></wps:RawDataOutput></wps:ResponseForm></...
2. **创建DbContext的Mock**:创建一个DbContext的Mock对象,使用Moq的`Mock<DbContext>`构造函数。例如: ```csharp var mockDbContext = new Mock<MyDbContext>(); ``` 其中,`MyDbContext`是你的自定义...
<artifactId>mockito-all</artifactId> <version>1.9.5</version> <scope>test</scope> </dependency> ``` 同时,Mockito需要与JUnit配合使用,例如: ```xml <dependency> <groupId>junit</groupId> ...
这个框架的作用 在自动测试中,针对dubbo接口进行mock的框架 ... <artifactId>dubbo-easy-mock</artifactId> <version>1.1.0</version> <exclusions> <exclusion> <groupId>org.apache.dubbo</grou
在IT行业中,Mock技术是一种非常重要的测试方法,它允许开发者模拟复杂的系统组件或者外部依赖,以便在不实际运行这些组件的情况下进行单元测试或集成测试。SpringBoot作为一个流行的Java开发框架,提供了构建微服务...
SpringBoot还提供了`@MockBean`和`@SpyBean`注解,它们可以在测试环境中创建模拟对象或监视真实对象的行为,这对于测试复杂的依赖关系非常有用。 此外,JUnit提供了各种断言方法(如`assertEquals`, `assertTrue`, ...