我已阅读以下帖子:
Is there a way to run MySQL in-memory for JUnit test cases?
Stubbing / mocking a database in .Net
它们似乎解决了单元/组件级别测试(或者no answers),但我正在对几乎没有测试挂钩的应用程序进行系统测试。我有一个由JPA数据库支持的RESTful Web服务。我使用NUnit对API运行测试,但这些测试通常需要复杂的数据设置和拆卸。为了降低通过API调用在测试中执行此操作的成本,我想创建(理想情况下在内存中)可以使用连接字符串通过数据库提供程序连接到的数据库。我们的想法是拥有一个测试资源管理服务,该服务构建特定类型的数据库,允许测试在启动时将SUT重新指向具有预期数据的新数据库 - 这可以简单地在拆卸时丢弃。
有没有办法,使用Oracle或MSSQL在内存中创建数据库(可能像C#DataSet一样简单),Web服务器可以像生产数据库一样对话?说实话,快速/廉价的创作和处理将与记忆一样好。
我觉得这个问题应该已经有了答案,但是找不到/不了解我已经找到它了。