6
我想編寫一個測試稱爲UploadedFile的類的函數的單元測試。如何使HttpContext可供我的單元測試使用?
我面對的問題是這個類的靜態構造函數使用HttpContext.Current屬性,因爲我正在從類庫運行我的單元測試,所以在測試時沒有HttpContext。
看看我的靜態構造函數:
static UploadedFile()
{
if (HttpContext.Current == null)
throw new Exception("web server not available");
HttpServerUtility server = HttpContext.Current.Server;
// SET UploadedFileMappingFile Names:
_resourceFileNames = new StringDictionary();
_resourceFileNames[_suppoertedFileStructures] = server.MapPath(SupportedUploadedFileStructures);
_resourceFileNames[_supportedFileStructuresXSD] = server.MapPath(SupportedUploadedFileStructuresXSD);
_resourceFileNames[UploadedFileEnum.UploadedFileFormatENUM.CSV.ToString()] = server.MapPath(UploadedFileColumnMap);
}
我應該在我的測試環境,做到讓HttpContext.Current
不爲空,我可以成功設置此:
HttpServerUtility server = HttpContext.Current.Server;
感謝您的想法!不幸的是,我還沒有使用過Rhino.Mocks.dll。看來我必須先熟悉它,然後我會嘗試實施您的建議。謝謝! – pencilCake 2010-08-13 09:25:40