2012-02-09 197 views

回答

-8

MTM不運行自動化測試。這是一個爲手動測試人員設計的工具。它提供的唯一自動化功能是測試人員記錄的操作的記錄/重播。

如果您想自動運行Selenium測試,請查看運行NUnit作爲構建過程的一部分,只需確保構建代理程序作爲交互式進程而不是服務運行,以便Selenium可以訪問桌面並運行瀏覽器。

或者你可以看看使用無頭的瀏覽器,如XBrowser或的HtmlUnit(雖然你將需要使用Selenium2 remote driver

+0

非常感謝。這真的很好地澄清了我。只剩下一件事情,測試代理的作用是什麼。他們有必要將硒測試作爲構建過程的一部分來運行,或者我們只需要構建代理就可以運行腳本。 – sam 2012-02-10 08:28:38

+1

微軟測試管理器可以通過手動測試用例(這使得它們自動化而不是手動)自動化測試運行,從而使自動化測試運行排隊。我不確定Selenium是否暴露了Visual Studio測試類型,但是您始終可以構建包裝類使用執行特定Selenium測試的Visual Studio測試框架。 – 2012-02-10 23:37:00

+2

嘿嘿,我沒有真正計算手動觸發與自動化測試相同的測試運行自動化測試。關於人類參與的一些事情,阻止了它爲我自動化:-) @sam這就是說,正如埃德所說,你可以使用編碼的UI測試來包裝Selenium測試,但這意味着使用MSTest而不是NUnit。我有一篇博客文章展示瞭如何使用Watin而不是Selenium在http://www.richard-banks.org/2010/11/how-to-use-codedui-tests-watin-and- mtm.html如果有幫助。 – 2012-02-14 09:10:41

4

MTM並允許測試自動化。 我們可以在Visual Studio中瀏覽測試用例,並將可執行文件附加到測試用例(在MTM中創建)。之後,我們必須將構建鏈接到測試計劃以及執行自動化測試。測試代碼應作爲測試項目(CodedUI或單元測試)開發,否則測試管理器將無法檢測到要測試的方法。

3

對於MTM使用Selenium運行自動化測試,您需要將測試與MTM中的測試用例相關聯。目前MTM只支持MS測試,因此您需要爲每個硒測試構建一個包裝。

解決方案#1:我會用T4模板構建包裝器,生成所需的MS Test存根,調用我的Selenium測試。

然後,您需要在TFS中使用與其關聯的MS Test'automation'進行測試用例。

解決方案#2:您可以使用「tcm import」命令行工具生成並保持測試用例與自動化同步。

現在您已配置了所有位,您可以繼續從MTM調用生成的測試,並且遇到@richard提到的問題。

解決方案#3:您可以在MTM中配置一個環境,以便收集數據並自動執行測試運行的觸發器。這可以作爲構建的一部分,或者更好地完成在發佈管理的二進制管道的一部分(http://nakedalm.com/execute-tests-release-management-visual-studio-2013/

雖然有很多的籃球讓所有設置的我發現這是一個相當可靠的方法執行自動化。如果MTM支持其他測試框架,那將會容易得多,但現在情況並非如此。