天天看點

做軟體的自動化測試一般用什麼工具?

 一、對于你的問題,首先明确測試類型,然後才能明确自動化測試類型,最後定位哪個類型用哪個方面的自動化測試工具。

  1、測試類型可以包括:白盒測試、黑盒測試(功能測試、性能測試)等。

  2、不同的測試類型使用的自動化測試方法不同,白盒測試主要針對代碼級的單元測試、黑盒測試主要面對功能級和系統級的驗證測試。

  3、自動化測試,針對白盒測試,一般需要有一定的程式設計基礎,即能夠基于功能代碼寫測試代碼,常用的單元測試方面的自動化測試工具很多,上網一搜全是。

  4、自動化測試,針對功能測試,有幾種情況,基于cli、api和gui的測試;基于cli、api的測試,即應用腳本技術向裝置模拟發送cli指令或者api請求,以達到控制裝置的效果。基于gui功能測試,即應用傳統的界面自動化測試工具(例如:rft、qtp等)控制界面控件操作的方法,以達到模拟使用者操作,這幾種方式都需要你有一定的編碼基礎;基于cli、api的需要你懂腳本技術(例如:tcl、python、ruby等),rft需要你懂java或者.net、qtp需要vb等。

  5、你說的loadrunner就是性能測試方面的工具,即是測試軟體性能、例如多使用者操作等性能、也需要寫代碼,lr腳本支援的語言有:java、c、visual basic、vbscrīpt。預設的腳本生成語言為 c;其實我想說的是,性能測試工具不重要,你需要掌握其性能測試的方法才是更重要的。

  二、我感覺你想入門自動化測試,但是從你問的問題來看,有一定盲目性,我簡單說一下自動化測試吧。

  1、自動化測試,其理念就是應用各種手段模拟人工操作,節省人力測試成本,保證産品測試品質。

  2、你想學好自動化軟體測試,不是單單靠學習幾個自動化工具就能掌握的,但是你可以從工具入手,首先,告訴你自動化測試的基礎是:

  1)程式設計技巧,包括進階語言和腳本語言,腳本語言是初期的掌握,可以有,tcl、phython、ruby等而進階語言,要好好學好一門,例如,我是對java為重點。還有,如果你是對web自動化測試的話,那麼jsp、php、html、css等web語言是必須掌握的。

  2)作業系統技巧;因為軟體自動化測試是建構在作業系統上的,其技巧需要能善于利用到作業系統的各種技巧,例如:系統資料庫、環境變量、句柄等。

  3)資料庫知識,要善于利用資料庫知識去存儲管理。

  4)業務知識,這也是重點。你所在軟體行業的軟體業務,要知道你的軟體的工作方式。

  5)品質與流程管理理念。

  然後,你的學習步驟:

  1)可以從工具入手,根據具體的項目去學習;例如:java軟體界面測試(rft、qtp的java插件等)、web界面測試(qtp、selenium等)、性能測試(rpt、loadrunner等)。但記住,學習其工具,重點不是簡單的使用,而是如何利用工具去擴充。

  2)然後,重點學習以上的基礎,以程式設計為重點,其餘的結合學習,順便說一句,其實自動化測試的理念與軟體設計模式理念很像,你可以從中有所領悟。

  3)之後,再學習去拓建自己的自動化測試架構,何謂架構,一下說不清楚,我給你推薦一下。

  注意:如果沒有自動化測試方面的實踐項目的話,最好先從基礎學起,因為基礎學好了,自動化測試入門會很快的。

  4(至于性能測試,也是一樣,可以先從工具入手,但不要局限于工具,性能測試最重要的是環境的建構方法以及對測試結果的分析方法,是以性能測試重點在于分析和實作過程,而不是工具使用過程。