2014-04-22 68 views
0

我很難實現我想要做的事情,並希望得到其他人的建議以幫助我解決缺乏理解的問題。執行多個語言環境的單元測試

我有一系列的單元測試。
我正在測試的應用程序是munti-lingual(英語和法語)。

我創建使用

String message1 = StringConstants.ERROR_MESSAGE_INVALID_USERID; 
Assert.IsTrue(Something.Contains(message1)); 

2個字符串資源文件(StringConstants.resx和StringConstants.fr-CA.resx)

在我的每一個單元測試,我可以驗證屬性和字符串值是什麼我希望能夠做的是運行一套測試,一次用於英語(默認),一次用於法語。

目前我使用這些代碼行中的一個

Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo("en"); 
Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo("fr-CA"); 
MyTestInitialize的方法來控制語言,我希望能在一個地方傳遞用於執行到一個命令行上使用任一

或者來自構建服務器(TeamCity)。

任何想法表示讚賞。

+0

OK設置環境變量,謝謝編輯。我會閱讀你提供的信息 – Stiley

回答

1

我假設你正在使用MSTest的,但是這應該與任何工作:在開始之前,你的試驗(例如批處理文件或也許TeamCity的參數就足夠了)

Environment.GetEnvironmentVariable("TEST_CULTURE_INFO") 
+0

這很好 – Stiley