10). 源代碼控制Source control
源代碼控制是一個任何類型軟件開發的基礎性工具,因此測試自動化也不例外。一般來說,源代碼控制系統允許你從一個主庫中check in或check out文件,回滾到先前的版本,找出版本之間的差異,并且同時追蹤幾個項目。這些功能使得多個人工作在源碼文件的多個版本上變為可能。
與其尋找一個包括了源代碼控制功能的測試工具,不如使用和軟件開發人員所使用的一樣的源代碼控制系統,實際上這樣也會更好些。使用相同的源代碼控制系統的實用性好處是你可以利用已經有一個建立了的工作方式的事實。使用相同的系統還有心理上的好處:在你組織的其他人了解到測試自動化是“真正的編程”。
即使你是你團隊中唯一的正在做自動化測試的人,你仍然要確信你所構建的測試系統中的所有部分-從測試數據文件和測試腳本到抽象層-可以在源碼控制下進行。幸運地是,和源代碼控制系統集成是比較簡單的:如果測試自動化文件用ASCII存儲,你可以使用你源碼控制系統中的所有功能。用二進制格式存儲自動化測試任何部分的測試工具會妨礙你和你的測試一起使用源碼控制的能力。你仍然可以把二進制文件放到源碼控制中,但是你將不能把文件的一個版本和另一個版本對比以判斷文件做何變更。(如果你不確定的話,你可以通過用好像Windows中的Notpad文字處理器來打開文件以斷定它是否是ASCII。如果你只看到文字字符并且有些意思,那么文件就是ASCII的。如果取而代之的是看到笑臉,心形,方塊或其他的奇怪的字符,那么文件可能就是二進制的了。)
另外,如果測試工具需要你將所有的文件放在一個集中的地方并且規定文件的結構,你需要試驗一下以確定和集中的文件位置一起使用源碼控制的最好方法(最好是在評估期間)。
11). 命令行腳本執行Command line script execution
從命令行運行腳本的能力使得設置腳本更加地容易,在機器comes back up之后自動地重啟機器和重新開始測試。這也使在每個版本后自動地開始自動化測試成為可能。
12). 用戶社區The user community
最后一個要查找的功能在軟件盒中是找不到:尋找一個擁有已建立用戶社區的工具。討論組,用戶的網站和當地用戶團體是所有可以學習你新工具細節的好地方。用戶社區的成員常常會共享通用函數的庫文件或其他一些有用的源代碼-這樣為開發你自己的內部可重用的庫文件有很大的幫助。
在你購買大量license之前先購買一些
就大多數組織而言,轉換工具的成本是非常昂貴的。那不僅僅是購買新軟件的事情。它也是關乎是要用新的工具重新創建現有的測試還是繼續為現有的工具支付維護費用的事情。購買一個受限的試用版的一個或兩個license,可能是在沒有太大風險的情況下試驗工具的最好辦法。如果試用版運行的很好,那么就購買更多的license并且全力的投入。如果試用版運行的不好,至少你沒有購買太多的license,潛在地浪費了很多的錢。
這也意味著如果你現在有一個工作的相當好的工具,但是沒有本文提及的所有功能,不要馬上跑出去買一個新的工具。切換工具可能比你相象中更加地昂貴。
結論
評估自動化測試工具是特別困難的,因為大部分的測試工具供應商在試圖做成買賣時,強調易用功能多過編程功能。你不會發現工具不能和你的源代碼控制系統一起工作,或是腳本很難維護,直到上路的6個月后。尋找與你現在所需功能,將來需要功能相平衡,以及迎合你預算底線成本的工具,這的確是一個挑戰。
另一個挑戰存在于間接地分開現實和市場。在你評估期間,你要確信花了時間研究手頭上工具中比較先進的功能。換句話說,不要依賴功能列表來決定你需要的最好工具。應該親自動手使用產品,并且使它自動化真正的測試。
記得在購買新的工具的時候,重要的是不管供應商想使測試自動化看上去怎樣得簡單,它實際上就是編程。相應地選擇工具。當你為最新的版本更新你的測試包時,你將會知道它是非常的值得,并且將發現你有一個比你曾經想象的更快的完整的測試包。
原文轉自:http://www.uml.org.cn/Test/200608111.htm