【发布时间】:2010-12-30 23:48:52
【问题描述】:
我有一个需要与第三方 API 交互的 VB/C# .NET 应用程序,但我想将其接口出来,以便使用模拟 API 进行测试。以下是我将在代码中使用的示例 API 调用:
RelayClient.AuthenticateUser(username, password, request, sessionID)
RelayClient.GetUserInfo(sessionID)
我面临的几个问题:
- RelayClient 是 NonInheritable/Static。
- RelayClient 未实现任何接口。
- API 客户端库是封闭源代码。
有处理这种情况的标准方法吗?
【问题讨论】:
-
这是一个长镜头,但如果您的目标程序集中有继承自 MarshalByRefObject 的类,那么许多免费的模拟框架(Moq、RhinoMocks 等)可以模拟它们,即使它们是密封的。不幸的是,他们仍然无法模拟静态类