Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在设计组件,它指的是第三方设计的组件。在我的组件中,我正在创建从第三方公开的对象的实例。
现在我想通过模拟第 3 方组件对我编写的组件进行单元测试。但是第 3 方提供的组件是一个 cconcrete 类。
我应该如何为我编写的组件编写单元测试
您可以解决此问题的一种方法是拥有一个工厂,该工厂提供来自第 3 方的具体类并将其注入您的类。然后,您可以简单地将他们的组件的新组件包装在工厂中,但提供一个模拟工厂,该工厂返回您的模拟 3rd 方组件以供您的测试使用。
你可以选择VS2010的Moles和VS2012的 Fakes。这两个框架都使您能够编写具体对象的模拟/垫片。
您可以只创建第三方 dll 对象的模拟并更改方法行为。