任何人请帮助我找到如何通过使用mockito模拟数据库



我是单元测试的新手。我想知道如何使用mock框架来模拟数据库。我厌倦了寻找。

你不像你说的那样"模拟数据库"。mock框架的目的如下:

假设你有一个名为myMethod()的方法,它调用了一些你相信可以工作的第三方方法,因此没有在测试中。

你告诉mock框架:

  • myMethod()使用参数x和y调用thirdPartMethod1()时,它将返回z
  • myMethod()调用thirdPartyMethod2() 4次,参数分别为a、b、c、d。如果没有,请测试失败

因此,mock框架将自己代替第三方方法,并在您设置它时返回它被告知的内容,例如,当myMethod()调用thirdPartMethod1()时,它将返回预期的结果。

它还将检查调用是否如预期的那样,例如,thirdPartyMethod2()确实使用正确的参数调用了正确的次数。

因此,当您模拟数据库调用时,您是而不是真正调用数据库。例如,您可以告诉Mockito基于JDBC ResultSet接口创建一个mock,并告诉它在使用某些参数调用时返回什么,将调用它的方法多少次以及将使用哪些参数调用这些方法。根本不涉及实际的数据库和实际的JDBC实现。

如果您确实必须使用数据库,请考虑DBUnit

相关内容

  • 没有找到相关文章

最新更新