2017-09-27 12 views
0

我正在使用AutoMapper的静态版本。我有一些配置文件类,在构造函数中有一些依赖关系,这些依赖关系依次具有它们自己的依赖关系。所以我的问题是,因为我们设置了AutoMapper一次,我如何模拟这些依赖关系,并且我应该首先嘲笑这些依赖关系,因为我将使用它来映射实际对象。在AutoMapper Profile类中有构造函数依赖关系是否正确,可否在测试过程中导致问题?

回答

0

当你使用静态时很难嘲笑事物,特别是如果你并行运行测试。所以你可以做的最好的事情是不使用静态版本的AutoMapper。我们使用我们注入的AutoMapper接口,这意味着我们总是可以模拟automapper本身。

至于是否要嘲笑与否,试想一下,你会在5种不同的方法使用同样的映射。现在你将不得不编写单元测试,以验证映射是正确的5次。相反,您可以验证映射是否已被调用,并编写单元测试以直接针对automapper进行映射。

由您来决定是否需要做出这些改变是值得的。如果你从头开始做一个新的设计,我可以建议像我描述的那样。多一点写作,但让您轻松进行单元测试并修正松散耦合。

相关问题