第三方API的单元测试

时间:2016-12-16 18:13:05

标签: c# api unit-testing mocking

我们使用第三方API,并且我们已经构建了在供应商环境中运行的dll。我们怎样才能测试这些dll。 API接口非常深,一个dll引用另一个,另一个引用另一个,依此类推,我们使用了大量的这些接口对象。这些基本上不能在供应商外部环境中运行

这真的非常不稳定,或者任何人都有在C#环境中模拟类似供应商界面的经验。

2 个答案:

答案 0 :(得分:0)

我建议尽可能将它们包装在简化的外观中,并模拟从外立面创建的界面。这取决于具体情况,这可能非常困难。

答案 1 :(得分:0)

我会考虑两种方式:

  1. 来自特定服务的摘要,并在您的逻辑和服务客户​​端之间实现另一层。然后模拟该层并通过测试覆盖您的代码。这可能相当复杂。
  2. 如果使用接口或抽象类交付第三方API客户端(并且您的代码不使用特定实现),则可以为客户端创建一个工厂,该工厂将返回其接口并模拟该工厂。它将允许您避免引入备用层。