需要一些建议来尝试模拟.NET WebClient或等效的

我有一些代码可以下载一些RSS源。

我一直在使用WebClientArgotic.Syndication.RssFeed库。

但这些都不可模糊:(

我绝对不希望每次运行unit testing时都能看到真正的RSS提要。

有没有人对我能做什么有任何建议?

我需要创建一个邪恶的包装器吗? 如果是的话……对此有何建议?

我会为每个外部依赖创建一个包装器(如果它是实用的)。 因此,与文件系统/ webservice /数据库的每次交互都应该只通过一个接口完成,这将导致更多可测试的代码。

另一种解决方案当然是(一如既往) Typemock Isolator 。

有没有人对我能做什么有任何建议?

摘要接口后面的实际HTTP调用。 然后使用WebClient编写此接口的实现。 现在让您的主类将此接口作为依赖项。 您现在可以在unit testing中模拟此接口,并配置您的dependency injection框架在运行时注入正确的实现。