2016-12-16 111 views
0

我們使用第三方API,並且構建了在供應商環境中運行的dll。我們如何測試這些DLL。 API接口非常深,一個dll引用另一個,另一個等等,我們使用了大量的這些接口對象。這些基本上無法運行在所有外部供應商環境第三方API的單元測試

這是真的非常無法測試或任何人有經驗嘲笑C#環境中類似的供應商接口。

+1

在這些情況下,很好地創建供應商代碼和特定於域的代碼之間的抽象級別。然後,您可以嘲笑該級別並測試域特定的代碼。 – Johnny

回答

0

我建議在可能的情況下將它們包裝在簡化的外觀中,並嘲笑從外觀創建的界面。這取決於具體情況,但這可能相當困難。

0

我會考慮兩個方面:從一個特定的服務

  1. 抽象並實現你的邏輯和服務客戶​​端之間的另一層。然後嘲笑該圖層並通過測試覆蓋您的代碼。這可能相當複雜。
  2. 如果使用接口或抽象類來交付第三方API客戶端(並且您的代碼不使用特定的實現),則可以爲客戶端創建一個工廠,以返回它們的接口並且它們模擬該工廠。它可以讓你避免引入備用層。