在Java中创建模拟对象的最佳框架是什么?为什么?每个框架的优缺点是什么?

推荐答案

我用Mockito已经很成功了.

当我try 学习JMock和EasyMock时,我发现学习曲线有点陡峭(尽管可能只有我自己).

我喜欢Mockito,因为它的语法简单明了,我很快就能掌握.最小语法被设计成很好地支持常见情况,尽管有几次我需要做一些更复杂的事情,但我发现我想要的东西是受支持的,而且很容易掌握.

以下是Mockito主页上的一个(节选)示例:

import static org.mockito.Mockito.*;

List mockedList = mock(List.class);
mockedList.clear();
verify(mockedList).clear();

再简单不过了.

我能想到的唯一主要缺点是它不会模仿静电的方法.

Java相关问答推荐

如何在Docker容器中使用wireock—Webhooks阻止请求?

Oracle DUAL表上使用DDL时jOOQ问题的解析'

如何在SystemiccationRetryListenerSupport中获得类级别的spring retryable annotation中指定的标签?

有关手动创建的包的问题

根据对象和值的参数将映射<;T、值&>转换为列表<;T&>

使用@MappdSuperClass扩展ParentClass&Won t继承ParentClass属性

我找不到&Quot;配置&的位置

Java 21虚拟线程执行器的性能比池化操作系统线程的执行器差?

如何获取Instant#of EpochSecond(?)的最大值

GetChildren().emoveAll()不会删除 node

在Java 15应用程序中运行Java脚本和Python代码

使用正则表达式从字符串中提取多个值

buildDir:File!&#的getter解决方案是什么?39.被抛弃

在Spring Boot应用程序中,server.port=0的默认端口范围是多少?

向Java进程发送`kill-11`会引发NullPointerException吗?

为什么这种递归会有这样的行为?

在java中使用不同的application.properties-jar而不使用Spring

嘲笑黄瓜中的对象

如何在Struts2中使用操作类中的结果注释重定向到不同的命名空间

带有提取器的JavaFXObservableList会根据侦听器的存在而改变行为