天天看點

第一章 Slenium2-Java 自動化測試基礎

    都是一些最基礎的知識點。

一:軟體測試分類

1)單元測試:單元測試(或子產品測試)是對程式中的單個子程式或具有獨立功能的代碼段進行測試的過程。

2)內建測試:內建測試是在單元測試的基礎上,先通過單元子產品組裝成系統或子系統,再進行測試。重點是檢查子產品之間的接口是否正确。

3)系統測試:系統測試是針對整個産品系統進行的測試,驗證系統是否滿足需求規格的定義,以及軟體系統的正确性和性能等是否滿足其需求規格的要求。

4)驗收測試:驗收測試是部署軟體之前的最後一個測試階段。驗收測試的目的是確定軟體準備就緒,向軟體購買者展示該軟體系統能夠滿足使用者的需求。

第一章 Slenium2-Java 自動化測試基礎

1)黑盒測試。

黑盒測試,指的是把被測的軟體看作一個黑盒子,我們不去關心盒子裡面的結構是什麼樣子的,隻關心軟體的輸入資料和輸出結果。(黑盒測試着眼于程式外部結構,不考慮内部邏輯結構,主要針對軟體界面和軟體功能進行測試。)

2)白盒測試。

白盒測試,指的是把盒子打開,去研究裡面的源代碼和程式執行結果。(檢驗程式中的每條邏輯路徑是否都能按預定要求正确工作。)

3)灰盒測試。

灰盒測試介于黑盒測試與白盒測試之間。(既關注輸出對于輸入的正确性,同時也關注内部表現。)

功能測試與性能測試

1)功能測試。(邏輯功能測試、界面測試、易用性測試、安裝測試、相容性測試等。)

2)性能測試。(時間性能和空間性)

手工測試與自動化測試

2)自動化測試。(功能自動化測試與性能自動化測試)

 功能自動化測試:它是把以人為驅動的測試行為轉化為機器執行的一種過程。通過測試工具(或架構)錄制/編寫測試腳本,對軟體的功能進行測試,并驗證測試結果是否正确,進而代替部分的手工測試工作,達到節約人力成本和時間成本的目的。

 性能自動化測試:通過性能工具來模拟成千上萬的虛拟使用者向系統發送請求,進而來驗證系統的處理能力。進而來驗證系統的處理能力。

二:分層的自動化測試

第一章 Slenium2-Java 自動化測試基礎

  單元自動化測試 (單元測試是指對軟體中的最小可測試單元進行檢查和驗證。)

  接口自動化測試 (子產品接口測試和Web接口測試。)

(1)子產品接口測試,主要測試子產品之間的調用與傳回。

(2)Web接口測試又可分為兩類:伺服器接口測試和外部接口測試。

    ·伺服器接口測試:指測試浏覽器與伺服器的接口。

    ·外部接口測試:指調用的接口由第三方系統提供。(第三方登入)

(接口測試也有相應的類庫或工具,例如測試HTTP的有HttpUnit、Postman等。)

UI自動化測試

UI層是使用者使用該産品的入口,所有功能都通過這一層提供并展示給使用者,是以大多測試工作都集中在這一層進行。(目前主流的測試工具有UFT、Watir、Robot Framework、Selenium等。)

三:什麼樣的項目适合自動化測試

  1)軟體需求變動不頻繁。

  2)項目周期較長。

  3)自動化測試腳本可重複使用。

四:自動化測試及工具的簡述

1)UFT。

UFT(全稱Unified Functional Testing)由QTP(Quick Test Professional software)與ST(Service Test)合并而來,由HP公司開發。它是一種企業級的自動測試工具,提供了強大易用的錄制回放功能,同時相容對象識别模式與圖像識别模式兩種識别方式,支援B/S 與C/S 兩種架構的軟體測試,是目前主流的自動化測試工具。

2)Robot Framework。

Robot Framework是一款基于Python語言編寫的自動化測試架構,具備良好的可擴充性,支援關鍵字驅動,可以同時測試多種類型的用戶端或者接口,可以進行分布式測試。

3)Watir。

Watir全稱是“Web Application Testing in Ruby”,是一種基于Web模式的自動化功能測試工具。Watir是一個Ruby語言庫,使用Ruby 語言進行腳本開發。

4)Selenium。

Selenium也是一個用于Web應用程式測試的工具,支援多平台、多浏覽器、多語言去實作自動化測試。目前在Web自動化領域應用越來越廣泛。