用例:我们有一个非常大的数据库(大约 200 个表),用于大型(遗留)系统。它是作为一种数据库优先的方法实现的,一个edmx文件定义了整个数据库。我们使用 XUnit 和 Effort 进行自动测试。问题是这些测试非常慢。运行我们当前的测试套件需要大约 7-8 分钟,即使测试覆盖率远不及我们想要的。
我注意到,如果我创建一个较小的edmx文件子集,通过删除一些不需要的表,测试运行得更快。
我正在寻找一种解决方案,对于特定的测试或测试套件,我们可以以某种方式使 Effort 只创建所需的表子集(我认为在许多情况下,我们只需要一个表)。
目前我们正在像这样设置我们的连接:
connection = EntityConnectionFactory.CreateTransient("metadata=res://entities.csdl|res://entities.ssdl|res://entities.msl");
有什么方法可以(例如,通过在运行时运行 XML 转换)让 Effort 只为我们定义的表子集创建它需要的数据结构?