初學自動化測試工具,總結了幾點應該注意的重點問題:
使用測試工具進行測試
工作的第一步并不是錄制腳本。而是應該在理解被測對象的基礎上,進行用例設計和測試過程設計。用例設計包括用例數據、用例測試過程、預期結果等。然后將用例測試過程錄制成測試腳本,將用例數據進行參數化。
完成一項功能或多項相關功能的測試時,需要設計合理的測試過程。不同的測試場景使用獨立的一項測試操作實現(表現為一個獨立的測試腳本文件)。多項相關
功能測試時,按設計的測試過程進行測試操作的組合(如使用QTP的操作調用)。這樣,每一個測試場景使用不同的測試數據,且各個測試場景獨立存在,但有有機地結合起來形成一個完整功能的測試。
2、檢查點是需要進行判斷的
初學者大多會按照教程設置各種檢查點,但并不會看測試結果中檢查點的結果。其實,許多檢查點只表明了兩種結果:“通過”或“失敗”。
關鍵的問題是:失敗的理由、場景、狀態等在結果中很難看出來。所以,在設置檢查點后,還必須對檢查點結果按照測試過程的業務邏輯進行判斷,然后輸出更為詳細的結果。具體示例見我的上篇
日志中的“ reporter.ReportEvent 1,"新增學生信息錯誤","信息存入
數據庫,但數據沒有在保存后立即顯示,數據編號:"+ DataTable("stu_ID", dtLocalSheet)”。
此外,檢查點的參數化至關重要,因為只有參數化檢查點,才能真正體現系統運行過程中動態的變化!
3、錄制測試與編寫測試腳本的目的是便于重復測試
既然是為了重復測試,那么就必須認真考慮和設計每個測試活動的前置條件(如在什么樣的數據環境下才能開始這個測試活動?)和后置條件(如:本測試活動所錄入的數據是否需要保留?)。否則就會很容易出現問題(如:錄入數據時關鍵字重復!)。
4、測試工具不能解決所有問題
許多初學者總希望測試工具能幫助他們解決所有問題。其實許多測試項目是必須靠手工完成的。如:界面布局的合理性、系統使用的方便性等。
自動工具永遠只是輔助手段!所以測試工作的關鍵還是對測試對象的理解、
測試用例與測試過程的設計。有了完善的用例,不管是手工測試還是自動測試,都是可以很好地完成測試任務的。
說到自動化測試,就不得不提大名鼎鼎的QTP了,Mercury QTP簡稱QTP,是一個先進的
先進的自動化測試工具,它可以用于創建功能和回歸測試。自動捕獲、驗證和重放用戶的交互行為。
QTP為每一個重要軟件應用和環境提供功能和回歸測試自動化的行業最佳解決方案,它是新一代自動化測試解決方案,采用了關鍵詞驅動(Keyword-Driven)測試的理念,能完全簡化測試的創建和維護工作。QTP關鍵詞驅動方式獨有之處在于,測試自動化專家可以通過一個整合的腳本和糾錯環境,擁有對基礎測試腳本和對象屬性的完全訪問權限,這些腳本和糾錯環境與關鍵詞視圖(Keyword View)可以互為同步。
QTP同時滿足了技術型和非技術型用戶的需求,讓各個公司有能力部署更高質量的應用,同時部署的速度更快,費用更低,風險也更小。QTP和我們新的測試自動化系統Mercury Business Process Testing?的緊密結合,可以將非技術型的業務專家(SME, Subject-Matter Experts)引入質量流程,這一意義重大的引入可以將IT和業務更好地融合,最終建立起更出色的應用。
有了該產品,您的QA部門可以獲取多方面的優勢:
1.用最少的培訓賦予整個小組創建成熟測試方案的能力。
2.確保跨所有環境、數據包和業務流程的正確功能點。
3.為開發人員全面記錄和復制缺陷,使他們能更快地修復缺陷,滿足最后上線期限。
4.對不斷變化的應用和環境展開便捷的回歸測試。
5.成為幫助整個機構實現高質量產品和服務、提高總收入和收益率的關鍵角色。
QTP是如何工作的
QTP易于操作,即使是初級的測試人員也能在短時間內對其駕輕就熟。您可以使用無需腳本的關鍵詞視圖來表現測試的每個步驟,僅由此就可創建一個測試。您還可以通過QTP所集成的錄制能力來捕獲測試步驟。該產品用簡單的英語以文檔形式記錄每個步驟,并通過活動屏幕將文檔與一個集成截屏相結合。傳統的腳本記錄工具所生產的腳本不易修改,與此不同的是,QTP的關鍵詞驅動方式能讓您便捷地插入、修改、數據驅動(data-drive)和移除測試步驟。
QTP可以自動引入檢查點來驗證應用的屬性和功能點,比如確認輸出量或檢查鏈接的有效性。在關鍵詞視圖的每一步驟中,活動屏幕可顯示被測應用在該步驟中的確切狀態。您還可以為任意對象加入幾種檢查點,僅僅在活動屏幕中點擊該對象,就可以驗證該組件行為是否達到了期望值。
然后您可以將測試數據輸入數據表(Data Table),它擁有和Excel同樣完善的功能特性,是一個集成的電子數據表格。您可以使用數據集并創建多種重復測試,無需編程就可以擴展測試案例的覆蓋面。數據可以通過鍵入的方式輸入或從數據庫、數據表格或文本文檔中導出。
高級測試人員可以在專家視圖(Expert View)中查看和修改他們的測試,在專家視圖中顯示了由QTP自動生成的基于行業標準的基本VBscrīpt語言。在專家視圖中所做的任何改動將自動與關鍵詞視圖同步。
一旦測試人員運行了一個腳本,TestFusion報告將顯示測試運行各方面的信息,包括:高水平的結果縱覽;一個可擴展的測試腳本樹狀視圖(Tree View),其明確指出了應用錯誤的發生位置;被使用的測試數據;每個步驟的應用截屏,其中并標明了所有的差異;以及通過或未通過每個檢查點的詳細解釋。您可以將TestFusion報告和QTP結合,從而與整個QA和開發小組分享這些報告。
QTP處理一些應用的新版本問題。當一個被測應用發生變化時,比如把一個”Login”按鈕被改名為”Sign in”,您可以在共享對象容器(Shared Object Repository)中做一次更新,接著此次更新將擴展到所有涉及這個對象的腳本。您可以將測試腳本公布給Mercury Quality Management,使其它的QA小組成員也可以使用您的測試腳本,從而減少了重復工作。
通過與Business Process Testing的整合,在一個基于web的系統中,QTP被用于實現自動化操作,使非技術型用戶可以便捷地在一個完全的無腳本環境中也能夠建立起測試。
QTP支持多種企業環境的功能測試,包括Windows、Web、.NET、 Java/J2EE、SAP、Siebel、Oracle、PeopleSoft、Visual Basic、ActiveX、Mainframe terminal emulators和Web services。
Mercury功能測試
那些在Mercury WinRunner