【发布时间】:2017-10-20 12:32:53
【问题描述】:
我需要为暴露服务方法的层编写集成测试。但是我需要我的数据库处于某种状态才能通过测试
例如,为了测试 GetStoreByID 方法,我需要在我的数据库中存储 1 而不是存储 2(用于 ko 测试)
数据库由另一个团队使用 sql 项目 (dacpac) 开发和部署
我使用 Entity Framework 6.1.3 和 Edmx
在这种情况下,测试前在数据库中设置数据的最佳方法是什么?
【问题讨论】:
-
与您的问题有点无关,但是让两个团队集成在一个数据库上通常被认为是“不是一个好主意”,因为这通常意味着两个团队以“步调一致”的方式工作,即部署到数据库通常需要其他团队同时部署。解决方案是引入某种 API 边界,让您在更改数据库的同时保持向后兼容性。
标签: c# entity-framework-6 integration-testing