我有一个静态类,它包装了 winspool 中的一些 native 方法:
public static class WinSpool
{
[DllImport("winspool.drv")]
public static extern int OpenPrinter(string pPrinterName, out IntPtr phPrinter, IntPtr pDefault);
...
//some more methods here
}
我想模拟它们进行单元测试,但找不到用于此的模式。 (每个人都避免使用静态类吗?)
最佳答案
是的,静态类通常是 frowned upon in the field of unit testing and mocking 。 AFAIK 没有开源模拟框架(例如 Rhino Mocks )支持静态类模拟
如果您绝对肯定地必须模拟静态类,那么恐怕您必须选择 Typemock ,它不是免费的。
关于.net - 模拟静态类,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1823739/