当试图使用Spring的Mockito时,通过bean声明创建Mock对象……
…在调用Mockito时我发现了一些奇怪的行为.多次没有重置Mock对象,例如:
Mockito.when(this.accountMapper.createBadGrammarException()).thenThrow(new BadSqlGrammarException("Bla", null, new SQLException()));
一旦在测试期间(在同一个模拟器上)多次调用此代码(“Mockito.when”),测试就会失败并出现错误(BadSqlGrammerException,即使此异常是实际预期的 – 我确实失败了如果我不抛出异常,并手动抛出它工作正常).这是预期的行为吗? Mockito似乎建议每次创建一个新的模拟,这意味着为每个方法创建DAO ……?
当我两次调用Mockito.when方法时到底发生了什么?模拟应该如何反应?替换行为?忽略它?不幸的是,大多数搜索仅产生如何为方法本身的多次调用返回不同结果的结果,但不会产生多次调用Mockito所期望的结果.当…
我只是想在这里了解Mockito和最佳实践,因为只是因为SEEMS才能实现,所以似乎是一个坏主意……