2011-06-23 42 views
3

我有一個MVC3 web應用程序,它已經發展到我想開始自動化一些功能測試的程度。所以,我一直在嘗試將編碼UI測試添加到我將單元測試放入的同一個項目中。只有沮喪。如何針對Windows Azure SDK運行編碼UI測試v1.4

我已經能夠記錄一系列簡單的步驟:登錄到應用程序。

我能夠生成代碼,我可以在名爲UIMap.Designer.cs的文件中看到生成的代碼。這個類的一個實例被實例化,並且測試方法在一個名爲LoginTest.cs的文件中被調用。

當我嘗試在[TestMethod的]在LoginTest.cs右鍵單擊並選擇運行測試,我最初收到以下錯誤:

Unable to load the test container 'C:...\WebRole.Tests.dll' or one of its dependencies. Error details: System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.VisualStudio.TestTools.UITesting, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.

所以,我翻從本地複製下面的參考=假爲真:

  • Microsoft.VisualStudio.TestTools.UITesting
  • Microsoft.VisualStudio.TestTools.UITest.Extension
  • Microsoft.Visua lStudio.QualityTools.CodedUITestFramework

現在,當我運行測試,我得到以下輸出:

Testing started:

Total tests: 1, filtered: 1

No tests found.

Duration : 94.9989452249951

瀏覽器實例未啓動。 Azure Compute和Azure存儲模擬器都不啓動。該應用程序未被打包和部署。總之,當我運行應用程序時,沒有發生任何事情。所以,我對UI測試如何運行感到困惑,因爲Azure模擬器環境沒有運行。

要解決這個問題,我試着打開VS2010的兩個實例。首先,我像往常一樣運行應用程序以運行Azure模擬器並部署應用程序。第二,我運行了CodedUITest方法。相同的結果。

現在,我卡住了。是否有其他人能夠針對Azure SDK v1.4提供的Azure模擬器運行編碼UI測試?

回答

-1

您所經歷的痛苦不僅與Azure有關,而且與編碼的UI測試作爲一個整體恕我直言。對於MVC(和asp.net),有一些工具可以緩解這種痛苦(並且你不需要編碼的UI套件)。

你試過SpecFlowWatiN?甚至還有一個可以在Nuget中使用的包,它是作爲MVCContrib庫的一部分構建的。

希望它能幫助您測試UI。

像一些指令結帳Channel9的:this video

0

這可能是太晚了OP,但是可以幫助別人有類似的問題(這是我幾個小時前)。

警告:我是一個CodedUI的完全新手,所以這可能不是正確方式來做到這一點。但至少讓我開始了。

我有類似的情況:Azure 1.4,ASP.NET MVC(2在我的情況下)網絡應用程序。我想開始一套UI測試,可以在我的桌面開發環境(VS2010 Premium)中運行。

下面是讓我開始的步驟: 1.記錄一下CodedUI測試 - 這樣你就可以看到一些東西可以看到正在運行以證明你能夠做到這一點。 (我跟着從這個前幾個步驟:http://msdn.microsoft.com/en-us/library/dd286608.aspx)。

打開瀏覽器,然後開始錄製並記錄啓動Web應用程序所需的所有操作。

  1. 添加初始化代碼測試啓動瀏覽器: 在你的編碼的UI測試類,添加一個方法用[TestInitialize]屬性:
[TestInitialize] 
    public void LaunchBroswer() 
    { 
     BrowserWindow browser = BrowserWindow.Launch(new System.Uri("https://127.0.0.2/Logon")); 
    } 

你的URI可以,當然,變化。這是我從其他一些帖子中推斷出來的一點魔力。將TestInitialize放在摺疊的代碼區域中並沒有幫助。

  1. 運行測試,開始在Azure模擬器:按Ctrl + F5(這將在瀏覽器中啓動Web應用程序,而不是運行測試

  2. 您現在可以從運行測試VS啓動模擬器的相同實例。