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.
我了解如何模拟接口或虚拟方法调用。但是像 TypeMock 这样的框架可以模拟框架中的所有内容。哪些 .NET 机制用于提供此类功能?
例如,Typemock Isolator 使用 CLR分析器 API来拦截 .NET 调用并在运行时更改它们:
报价:
Typemock Isolator 使用面向方面的编程设计来创建模拟方面。在内部,它使用 .NET Framework 分析器 API 来监视应用程序的执行。当 CLR 加载方法时,Typemock Isolator 检索 IL 并将其替换为检测的 IL 代码。Typemock Isolator 不会更改您的原始 IL 代码,它只是插入调用 Typemock Isolator 框架并返回模拟值的新代码。
Mock Everything 是 Mock 框架的功能之一。Mock Everything 简而言之就是模拟一个类中的所有东西,比如
JustMock和TypeMock都提供了这个功能。
您实际上可以查看一些开源模拟框架的源代码,例如 Moq 框架、Easy Mock、Rhino Mocks 等。
披露:请注意,提供的链接是我自己的网站