我想在單個測試中啓動待測應用程序,並在其他測試中使用打開的應用程序。這是因爲啓動應用程序需要相當長的一段時間,如果我爲每個測試重複一遍,它可能會很昂貴。我希望在對象圖中有一個由AUT的單個對象,並與UI地圖對象一起初始化。在多個編碼的UI測試之間共享被測試對象下的應用程序
此方法失敗,因爲對象不在不同測試之間傳遞,即使它是靜態的。有沒有解決這個問題的方法?
的UIMap
public partial class UIMap
{
public ApplicationUnderTest _aut { get; set; }
public void AUT_Open()
{
string AUTExecutable = ConfigurationManager.AppSettings["AUTExecutable"];
_aut = ApplicationUnderTest.Launch(AUTExecutable);
}
...
}
測試
private static UIMap map;
[TestMethod]
public void Test01()
{
...
this.UIMap.RecognitionDesigner_Open();
}
[TestMethod]
public void Test02()
{
//Do something on the UIMap that tries to use the same member variable- _aut
//in the UIMap
}
感謝您的輸入。我嘗試了你所說的,但不幸的是,被測試的應用程序仍在關閉。 AFAIK,在每次測試/ ClassInitialze /之後,對UIMap對象的引用都會丟失。因此,在UIMap對象中初始化的AUT也被關閉。但是我可以通過使用'_aut.CloseOnPlaybackCleanup = false;'來解決這個問題。 – Bala 2013-03-21 08:32:17