2016-07-11 64 views
3

我使用無狀態服務模板創建了一個新的服務結構應用程序。我添加了一個簡單的類,所以我可以寫一個單元測試吧:在服務結構中使用XUnit

public class FakeClass 
{ 
    public void DoStuff() 
    { 
     FabricClient client = new FabricClient(); 
    } 
} 

創建單元測試一個新的類庫和引用的xUnit和的xUnit亞軍的NuGet包。當我嘗試和運行單元測試,我得到以下錯誤:

Result Message: System.BadImageFormatException : Could not load file or assembly 'XUnitExample.WebService, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. An attempt was made to load a program with an incorrect format.

我怎樣才能獲得的xUnit與服務織物工作,所以我可以寫單元測試?

回答

5

這個問題顯然與創建新項目時的默認設置有關。當您創建新項目時,它將使用Any CPU作爲默認體系結構,而Service Fabric需要x64。

我不得不進入Project Build屬性,並將其更改爲使用x64作爲目標平臺。這樣做後,我的單元測試沒有出現在測試資源管理器中,因此我必須更改以下設置:

Test -> Test Settings -> Default Processor Architecture -> x64

+0

三個小時卡住,直到我讀了這個。 – Jesus

-1

此問題與服務結構無關。你可以嘗試重新安裝xunit軟件包嗎?

+0

該問題與使用AnyCPU與x64構建設置有關。 – Dismissile