0

我已經開始研究VisualStudio 2012中的新功能,您可以在其中添加一個用於單元測試目的的DLL的假組件。 我正在使用SharePoint 2010,現在我們都對單元測試依賴於SharePoint API的代碼感到痛苦。ShimSPWeb()。LocaleGet不可用?

我添加了一個假的程序集Microsoft.SharePoint和工作正常,但我來到了一個點,我需要重寫方法SPWeb.Locale。我認爲這很容易。我以爲會有像ShimSPWeb.LocaleGet這樣的方法,但沒有。

這是我關於LocaleShimSPWeb

enter image description here

總之是唯一的選擇:應該有一個shimWeb.LocaleGet可用。

回答

1

我想通了。您可以將診斷添加到* .fakes設置文件。這可以在生成假貨組件時啓用調試輸出。

<Fakes xmlns="http://schemas.microsoft.com/fakes/2011/" Diagnostic="true"> 

當我這樣做,我得到這樣的輸出:

unstubbable:方法是抽象的,不能存根,類型 System.Globalization.CultureInfo不可目標 框架版本

SharePoint 2010的目標.Net版本3.5。我的單元測試被設置爲目標框架.Net 4.0。 我將單元測試項目的目標更改爲3.5,重新生成假裝配,並且瞧!有效!