mocking相关内容

Mockito - 验证方法有什么作用?

假设我有以下伪类测试代码: //让我们静态导入Mockito,这样代码看起来更清晰导入静态 org.mockito.Mockito.*;//模拟创建List mockedList = mock(List.class);//使用模拟对象mockedList.add("one");mockedList.clear();//这两个验证方法是做什么的?验证(模拟列表).添加(“一个");验证(模拟列表) ..
发布时间:2022-01-14 13:40:00 移动开发

修改 void 函数的输入参数,然后读取

我有一个相当复杂的 java 函数,我想使用 jUnit 进行测试,为此我正在使用 Mockito.这个函数看起来像这样: public void myFunction(对象参数){...做东西();...转换(输入,输出);...参数.setInformationFrom(输出);} convert 函数根据输入设置输出的属性,它是一个 void 类型的函数,尽管“输出"是参数是正在使用的, ..
发布时间:2022-01-14 13:38:57 Java开发

mockito 的学习资源

我需要使用 mockito 为现有代码创建单元测试框架.我找不到开始学习 Mockito 的好地方.你能给我指出一个很好的mockito学习资源吗?(在线资源或其他) 解决方案 在“帮我开始" 在 Google mockito 讨论组 上的主题,mockito 的项目负责人 Szczepan Faber 建议: 文档包括一些例子 Brett L. Schuchert 的教程 ..
发布时间:2022-01-14 13:38:47 Java开发

如何模拟 @InjectMocks 类的方法?

例如我有处理程序: @Component公共类 MyHandler {@AutoWired私人MyDependency myDependency;公共 int someMethod() {...返回另一个方法();}公共 int anotherMethod() {...}} 为了测试它,我想写这样的东西: @RunWith(MockitoJUnitRunner.class}类 MyHandl ..
发布时间:2022-01-14 13:38:07 Java开发

PowerMock + Mockito VS Mockito 单独

谁能总结一下,在 Mockito 之上添加 PowerMock 的具体功能是什么? 到目前为止,我已经找到了这些: 模拟静态、最终和私有方法 移除静态初始化器 允许在没有依赖注入的情况下进行模拟 - 我不清楚这一点.你能详细说明一下吗? 它是否添加了其他内容?你能概括几行吗? 在使用 PowerMock 时我是否需要牺牲一些东西? 解决方案 我不知道其他好处,但 ..
发布时间:2022-01-14 13:38:01 Java开发

如何测试 SimpleJdbcCall

我需要为此代码创建测试. @Autowiredjdbc模板 jdbc模板;公共列表获取数据(int id){//这里的前提条件SimpleJdbcCall getCall = new SimpleJdbcCall(jdbcTemplate).withSchemaName(SCHEMA).withProcedureName(SP).declareParameters(//...).retur ..
发布时间:2022-01-14 13:35:57 其他开发

模拟 ScheduledExecutorService 与“不要模拟你不拥有的类型"哲学

模拟 ScheduledExecutorService 会确实使测试我的课程更容易,但根据 mockito 推荐 这似乎是个坏主意,因为模拟类的逻辑可能会发生变化,导致它以不正确的方式使用,但单元测试仍会报告成功. 似乎为它编写一个包装器将是“干净"的方式,但我有一种感觉,这只会导致接口的完全重复,这只会让我的代码不那么简单.我想遵循this answer的实用建议,但我不确定concret ..
发布时间:2022-01-14 13:33:35 Java开发

带有局部变量的 Mockito

我有一个返回 String 的简单方法. 它还创建一个本地 List.我想测试添加到本地 List 的值. 这是一个例子 包 com.impl;导入 java.util.ArrayList;导入 java.util.List;导入 com.test.domain.CustomerVo;公共类 ClassImpl {公共字符串assignGift(CustomerVo customer ..
发布时间:2022-01-14 13:27:04 Java开发

将 .eml 文件加载到 javax.mail.Messages

我正在尝试对处理 javax.mail.Message 实例的方法进行单元测试. 我正在编写一个转换器来更改以不同格式到达的电子邮件,然后将其转换为一致的内部格式(MyMessage).这种转换通常取决于电子邮件的发件人地址或回复地址,并且创建新的 MyMessage. 我有一组原始电子邮件,它们在本地保存为 .eml 文件,我想做一个单元测试来加载 .eml 文件类路径并将它们转换为 ..
发布时间:2022-01-14 13:25:36 其他开发

如何更改 Mockito 中字符串的默认返回值?

这个 2010 年的问题暗示了我正在尝试做的事情. 我正在做一个单元测试,它练习需要许多模拟对象来完成它需要做的事情的代码(测试 HTML + PDF 渲染).为了使这个测试成功,我需要生成许多模拟对象,并且这些对象中的每一个最终都会将一些字符串数据返回给正在测试的代码. 我认为我可以通过实现我自己的 Answer 类或 IMockitoConfiguration 来做到这一点,但我不 ..
发布时间:2022-01-14 13:25:10 Java开发

是否可以在不打开课程的情况下将 Mockito 与 Kotlin 一起使用?

我们可能知道,默认情况下,Kotlin 类一旦定义,它就是最终的,除非它被显式声明为 open. 当我们想使用 Mockito 模拟它时,这将发布一个挑战.我们需要将其显式声明为 open.有没有一种方法可以避免将其声明为 open 同时能够模拟它以进行测试? 解决方案 Mockito2 现在也可以模拟 final 类了. 但是,此功能是选择加入,因此您需要手动启用它. 为此 ..
发布时间:2022-01-14 13:24:56 其他开发

如何模拟从 Junit 调用内部方法

我有 MyClass,我正在为每个方法做一个测试类 (Method1Test) 公共类 MyClass {公共int方法1(){int a = method2();返回一个;}公共int方法2(){返回0;}}@RunWith(MockitoJUnitRunner.class)公共类 Method1Test {@InjectMocks私人 MyClass myClass = new MyClas ..
发布时间:2022-01-14 13:23:32 Java开发

mockito 有与 jMock 的 States 等效的成语吗?

Growing Object Oriented Software 一书在 jMock 中提供了几个示例,其中状态是显式的,而不通过 API 公开.我真的喜欢这个主意.有没有办法在 Mockito 中做到这一点? 这是书中的一个例子 公共类 SniperLauncherTest {私人最终状态uctionState = context.states("拍卖状态").startsAs("未加入 ..
发布时间:2022-01-14 13:21:42 Java开发