- 全棧自動(dòng)化測(cè)試實(shí)戰(zhàn):基于TestNG、HttpClient、Selenium和Appium
- 盧家濤
- 10字
- 2020-06-08 17:55:44
第1章 自動(dòng)化測(cè)試概述
1.1 自動(dòng)化測(cè)試的定義和分類
自動(dòng)化測(cè)試通俗地講就是使用軟件A自動(dòng)執(zhí)行測(cè)試用例來測(cè)試軟件B。軟件A既可以是現(xiàn)有的自動(dòng)化測(cè)試工具,也可以是自己編寫的測(cè)試腳本。軟件B就是待測(cè)試軟件。
自動(dòng)化測(cè)試的分類維度如下。
1.根據(jù)測(cè)試階段劃分
(1)單元自動(dòng)化測(cè)試
單元自動(dòng)化測(cè)試是指通過自動(dòng)化手段對(duì)軟件最小可測(cè)單元(模塊)進(jìn)行的測(cè)試。一個(gè)最小可測(cè)單元通常為一個(gè)方法或函數(shù)。單元自動(dòng)化測(cè)試常用的工具(框架)有JUnit、TestNG、Jtest、unittest和Pytest等。
(2)集成自動(dòng)化測(cè)試
集成自動(dòng)化測(cè)試是指通過自動(dòng)化手段把軟件的模塊組合起來測(cè)試。集成測(cè)試分為增量測(cè)試和非增量測(cè)試兩種,這兩種測(cè)試在手工或自動(dòng)化的集成測(cè)試中都可以采用。
①增量測(cè)試。
在增量測(cè)試中,如果增量方式是自頂向下的,那么測(cè)試的過程需要樁﹔如果增量方式是自底向上的,那么測(cè)試的過程需要驅(qū)動(dòng)。在實(shí)際項(xiàng)目中,經(jīng)常涉及的“打樁”概念就來自于增量測(cè)試。
②非增量測(cè)試。
非增量測(cè)試不像增量測(cè)試那樣有嚴(yán)格的增量順序,因此在非增量測(cè)試過程中,可能同時(shí)需要樁和驅(qū)動(dòng),也可能只需要其中一個(gè),或者兩者都不需要。
集成自動(dòng)化測(cè)試的主要表現(xiàn)之一為接口自動(dòng)化測(cè)試,用于接口自動(dòng)化測(cè)試的常用工具(框架)有JMeter、HttpClient、requests、SoapUI和Postman等。
(3)系統(tǒng)自動(dòng)化測(cè)試
系統(tǒng)自動(dòng)化測(cè)試是指通過自動(dòng)化手段,將軟件、硬件、操作人員當(dāng)成一個(gè)整體進(jìn)行測(cè)試。系統(tǒng)自動(dòng)化測(cè)試又可分為功能自動(dòng)化測(cè)試、性能自動(dòng)化測(cè)試、安全(滲透)自動(dòng)化測(cè)試和兼容性自動(dòng)化測(cè)試等。系統(tǒng)自動(dòng)化測(cè)試常用的工具(框架)有很多,比如Testin云測(cè)平臺(tái)就提供了兼容性自動(dòng)化測(cè)試功能,它可以測(cè)試App在各種手機(jī)上運(yùn)行是否正常。
2.根據(jù)測(cè)試類型劃分
(1)功能自動(dòng)化測(cè)試
功能自動(dòng)化測(cè)試是指通過自動(dòng)化手段檢查軟件能否達(dá)到預(yù)期功能的測(cè)試。主要表現(xiàn)為Web應(yīng)用、移動(dòng)應(yīng)用和桌面應(yīng)用等軟件的界面測(cè)試。界面自動(dòng)化測(cè)試的常用工具(框架)有Selenium、Appium、Robot Framework、UFT/QTP和AutoIt等。
(2)性能自動(dòng)化測(cè)試
性能自動(dòng)化測(cè)試是指通過自動(dòng)化手段模擬各種正常、峰值和異常負(fù)載條件,從而對(duì)系統(tǒng)的各項(xiàng)性能指標(biāo)進(jìn)行測(cè)試。在性能自動(dòng)化測(cè)試中,JMeter和LoadRunner占據(jù)了絕對(duì)的統(tǒng)治地位。
(3)安全(滲透)自動(dòng)化測(cè)試
安全(滲透)自動(dòng)化測(cè)試可理解為通過自動(dòng)化手段檢查軟件是否有安全漏洞。安全(滲透)自動(dòng)化測(cè)試包含前期交互、信息收集、威脅建模、漏洞分析、滲透攻擊、后滲透攻擊和測(cè)試報(bào)告7個(gè)階段。安全(滲透)自動(dòng)化測(cè)試常用工具(框架)有Metasploit、Burp Suite、Nessus、NMap、sqlmap、Synopsys Defensics和Peach Fuzzer等。
3.根據(jù)靜態(tài)和動(dòng)態(tài)劃分
(1)靜態(tài)自動(dòng)化測(cè)試
靜態(tài)自動(dòng)化測(cè)試是指通過自動(dòng)化手段不實(shí)際運(yùn)行軟件的測(cè)試,比如代碼審查、文檔測(cè)試等。根據(jù)編程語言不同,代碼審查自動(dòng)化測(cè)試工具(框架)的差異很大。對(duì)Java而言,常用的有FindBugs、PMD等。
(2)動(dòng)態(tài)自動(dòng)化測(cè)試
動(dòng)態(tài)自動(dòng)化測(cè)試是指通過自動(dòng)化手段實(shí)際運(yùn)行軟件的測(cè)試,即通常所說的“軟件測(cè)試”。動(dòng)態(tài)自動(dòng)化測(cè)試(框架)前面已經(jīng)介紹很多,這里不再贅述。
從狹義來講,自動(dòng)化測(cè)試主要指動(dòng)態(tài)的功能自動(dòng)化測(cè)試。
- Web程序設(shè)計(jì)及應(yīng)用
- JavaScript前端開發(fā)模塊化教程
- AngularJS Testing Cookbook
- ReSharper Essentials
- Python從小白到大牛
- Linux C/C++服務(wù)器開發(fā)實(shí)踐
- Ext JS Data-driven Application Design
- Java入門很輕松(微課超值版)
- Learning Selenium Testing Tools(Third Edition)
- Java系統(tǒng)化項(xiàng)目開發(fā)教程
- 微服務(wù)從小白到專家:Spring Cloud和Kubernetes實(shí)戰(zhàn)
- Android玩家必備
- Rust游戲開發(fā)實(shí)戰(zhàn)
- Python Digital Forensics Cookbook
- Java程序設(shè)計(jì)教程