1359得票42回答
模拟和桩之间有什么区别?

我已经阅读了多篇关于测试中模拟和存根(stubbing)的文章,包括Martin Fowler的《Mocks Aren't Stubs》,但仍然不理解它们之间的区别。

1192得票11回答
如何使用Mockito模拟void方法

如何使用Mockito模拟返回void类型的方法? 我实现了一个观察者模式,但由于不知道如何操作,因此无法使用Mockito进行模拟。 我尝试在互联网上找到示例,但是没有成功。 我的类看起来像这样:public class World { List<Listener&gt...

971得票16回答
伪造、模拟和存根之间有什么区别?

我知道如何使用这些术语,但我想知道单元测试中是否有关于"伪造"、"模拟"和"桩"的被广泛接受的定义?你是如何为你的测试定义这些术语的?描述一下你可能在哪些情况下使用它们。 以下是我对它们的理解: "伪造":一个实现了接口但只包含固定数据和没有逻辑的类。根据实现返回"好"或"坏"的数据。 ...

744得票13回答
@Mock和@InjectMocks之间的区别

@Mock和@InjectMocks在Mockito框架中有什么区别?

703得票8回答
Mocking是什么?

Mocking是什么? Mocking指的是在软件开发中创建虚拟对象,以模拟真实对象的行为和功能。这样可以使开发人员在测试时更容易地识别和解决问题,同时减少对现有系统的依赖性。

609得票5回答
使用Mockito模拟一些方法但不是所有方法

使用Mockito,有没有一种方法可以模拟类中的某些方法,而不是其他方法? 例如,在这个(虽然牵强附会的)Stock类中,我想要模拟getPrice()和getQuantity()的返回值(如下面的测试片段所示),但我希望getValue()按照Stock类中编写的乘法执行。public c...

606得票4回答
Mockito测试一个void方法抛出异常

我有一个返回类型为void的方法。它也可能会抛出许多异常,所以我想测试这些异常是否被抛出。所有尝试都以同样的原因失败了: 类型Stubber中的when(T)方法不适用于参数(void) 有什么想法可以让该方法抛出指定的异常吗? doThrow(new Exception()).wh...

584得票6回答
Mockito可以捕获多次调用的方法的参数吗?

我有一个方法会被调用两次,我想捕获第二次调用的参数。 这是我尝试过的:ArgumentCaptor<Foo> firstFooCaptor = ArgumentCaptor.forClass(Foo.class); ArgumentCaptor<Foo> second...

548得票4回答
将传入方法的值返回

我有一个接口上的方法:string DoSomething(string whatever); 我想使用MOQ进行模拟,让它返回传递进来的任何参数 - 就像这样:_mock.Setup( theObject => theObject.DoSomething( It.IsAny<st...

503得票22回答
使用Mockito模拟静态方法

我已经编写了一个工厂来创建 java.sql.Connection 对象:public class MySQLDatabaseConnectionFactory implements DatabaseConnectionFactory { @Override public Conne...