gpt4 book ai didi

.net - "Typemock Isolator"如何模拟静态方法?

转载 作者:行者123 更新时间:2023-12-04 02:11:07 28 4
gpt4 key购买 nike

正如你们中的一些人所知道的,在 .net 中模拟静态方法通常是不可能的。

通过模拟,我的意思是用另一个具有相同签名的方法替换类中的方法,通常用于测试目的。

用于模拟方法的两种主要方法是将其声明为虚拟方法或在接口(interface)中定义它。 .net 静态方法都不允许使用这两种方法。

然而,有一个昂贵的工具叫做“Typemock Isolator”,它允许模拟静态方法。 Isolator 如何完成这个看似不可能的壮举?

最佳答案

它在 FAQ .

基本上,Typemock fake 实例化了一个原始类型的新对象,并 Hook 到该对象的每个方法和属性调用,将调用重定向到 fake 并返回您指定的值。它在 .NET Framework 中使用了一些深奥的巫术(.NET Profiler API,如果你有兴趣的话)来做到这一点,但这都是“合法的”。从技术上讲,任何人都可以构建 Typemock 的副本,但我还没有看到。

关于.net - "Typemock Isolator"如何模拟静态方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3207028/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com