由於我使用Selenium/MSTest進行UI測試,我遇到了一個問題:我需要在自動化測試之前將ASP.NET站點部署到臨時服務器在TFS構建期間執行(TFS 2012)。在執行測試之前更改TFS Build以部署
雖然我認爲我可以在TFS生成過程模板(DefaultTemplate.xaml
),我想不出如何更改爲了執行建設 - > Deploy->測試流做此配置。
注意我在使用TFS Lab Environment時發現了一些幫助實現此目標的方法,但這不是我的情況。
由於我使用Selenium/MSTest進行UI測試,我遇到了一個問題:我需要在自動化測試之前將ASP.NET站點部署到臨時服務器在TFS構建期間執行(TFS 2012)。在執行測試之前更改TFS Build以部署
雖然我認爲我可以在TFS生成過程模板(DefaultTemplate.xaml
),我想不出如何更改爲了執行建設 - > Deploy->測試流做此配置。
注意我在使用TFS Lab Environment時發現了一些幫助實現此目標的方法,但這不是我的情況。
最後,我已經解決了這個問題鏈構建。
例如,當我排隊一個生產版本,這是序列:
我從這個解決方案博客文章:
帖子的作者發佈修改後的DefaultTemplate。XAML(構建定義)在GitHub的要點是:
積分整個博客!
一個簡單的解決方案是在構建定義中指定一箇中間msbuild項目文件,並從那裏調用實際的解決方案文件。
然後,您可以在構建之前或之後執行所需的任何操作,以確保環境在TFS執行測試之前啓動並運行。在TFS運行我們的集成測試之前,我們需要編譯和部署數據庫。
這是避免必須操作構建模板的一種解決方案。
默認模板單元測試與UI測試不同。默認模板用於運行Build - > Unit Test - > Deploy。
你現在在Build - > unit Test - > Deploy - > UI Test。
對於UI測試,您需要單獨的測試代理並在交互過程中設置構建代理。
這些鏈接可以幫助
我很感謝你的信息,但我覺得你根本沒有讀過我的問題。我知道現在我在另一個流程中,這很清楚,但是我問*如何實現這樣的流程*。另外,我說我知道Lab Manager的方法......但我只想運行UI測試,你知道的。無論如何,謝謝你的努力。 –
另外,您是否會詳細說明「您需要單獨的測試代理」?關於「互動過程」,我不這麼認爲,因爲我使用PhantomJS。測試正在執行沒有問題。它是關於*何時執行的。謝謝! –
道歉誤解了你的問題。我認爲你正在嘗試在構建之後運行編碼UI測試。有關測試代理在此鏈接的更多細節http://stackoverflow.com/questions/7265192/how-can-tfs-build-process-be-configured-to-execute-tests-on-test-agents-through/7331110# 7331110。我從來沒有試過PhantomJS。我想你的情況在構建之後運行單元測試,你需要定製構建模板。 – suresh2