01測試分類

一、按照測試目標分類

1、界面測試

肉眼所看到的一切,都需要進行測試。如,按鈕的點擊;輸入框輸入文本;下拉框的選擇;其它的交互等。。。

前端開發在執行開發之前需要交互/設計的同學給出設計圖(以圖片的形式展示要實現的前端頁面,在設計圖中明確了給定了每個元素的大小、形狀、顏色等等要素)

測試的方面:

①驗證界面內容顯示的完整性、一致性、準確性、友好性。比如,界面內容對屏幕大小的自適應,換行,內容是否全部清晰展示;

②驗證整個界面布局和排版是否合理,不同板塊字體的設計,圖片的展示是否符合需求;

③對界面不同控件的測試,比如,對話框,文本框,滾動條,選項按鈕等是否可以正常使用,有效和無效的狀態是否設計合理;

④界面的布局和色調符合當下時事的發展;

2、功能測試

功能測試就是對產品的各功能進行驗證,根據功能測試用例,逐項測試,檢查產品是否達到用戶要求的功能。

如何進行功能測試?

設計功能測試用例,參考需求規格說明書進行用例的編寫,具體的測試用例需要使用黑盒設計測試用例的方法。如等價類、邊界值、判定表法、正交法、場景法、錯誤猜測法等。

3、性能測試

4、可靠性測試

可靠性即可用性,是指系統正常運行的能力或者程度,一般用正常向用戶提供軟件服務的時間占總時間的百分比表示。

可靠性=正常運行的時間/(正常運行的時間+非正常運行的時間)*100%

可用性指標一般要求達到4個或者5個9

5、安全性測試

安全性是指信息安全,是指計算機系統或網絡保護用戶數據隱私、完整,保護數據正常傳輸和抵御黑客,病毒攻擊的能力。

比如,sql注入、xss漏洞、登錄模塊密碼一般要加密顯示、數據庫用戶敏感信息要加密、接口返回值不能返回用戶的隱私數據等。。。

安全性測試的方法有代碼評審、滲透測試、安全運維等。常用的靜態安全測試工具有,Coverity、IBM、Appscan Source,HPFortify,常用的動態安全測試工具有OWASP的ZAP,HP WebInspect等。其中靜態安全測試是常用的安全性測試的方法。

6、易用性測試

檢查產品/軟件/功能是否具備簡單易上手的屬性。

二、按照執行方式分類

1、靜態測試

所謂靜態測試就是不實際運行被測軟件,而只是靜態地檢查程序代碼、界面或文檔中可能存在的錯誤的過程。

常見的靜態測試方法有代碼走查、代碼掃描工具(如sonnar)等。。

2、動態測試

動態測試指的是實際運行被測程序,輸入相應的測試數據,檢查實際輸出結果和預期結果是否相符的過程,所以判斷一個測試屬于動態測試還是靜態測試,唯一的標準就是看是否運行程序。

△大多數軟件測試工作都屬于動態測試。

三、按照測試方法

1、白盒測試

白盒測試又稱結構測試或邏輯測試,它用來分析程序的內部結構,通過程序的邏輯結構來設計測試用例來進行測試。

白盒測試的目的是,檢查軟件內部的邏輯結構,對軟件的邏輯路徑進行覆蓋測試。在程序的不同地方設置檢查點,觀察程序狀態與預期狀態是否一致。

白盒測試的方法有,語句覆蓋、判定覆蓋、條件覆蓋、判定條件覆蓋、條件組合覆蓋、路徑覆蓋。

方法解釋:

if A and Bthen action1
if C or Dthen action2

①語句覆蓋:要保證每條語句都執行到。在例子中,即讓action1和action2都執行到。

? ? ? ? 那么測試用例可以是A=T;B=T;C=T;D=F 或者A=T;B=T;C=T;D=T 或者A=T;B=T;C=F;D=T;

②判定覆蓋:每個判定都要覆蓋到為真和為假兩種情況。在例子中,即讓A and B 為T;A and B為F;C or D為T;C or D為F;

? ? ? ? 那么測試用例可以是A=T;B=T;C=T;D=T 和A=F;B=F;C=F;D=F;(沒有完全列舉)

③條件覆蓋:要保證每個條件都有T和F兩種情況。在例子中,即讓A為T,F;B為T,F;C為T,F;D為T,F;

? ? ? ? 那么測試用例可以是A=T;B=T;C=T;D=T和A=F;B=F;C=F;D=F;(沒有完全列舉)

④判定條件覆蓋:同時滿足判定覆蓋和條件覆蓋。在例子中,即讓A and B為T;A and B為F;C or D為T;C or D為F,同時讓A為T,F;B為T,F;C為T,F;D為T,F;

? ? ? ? 那么測試用例可以是A=T;B=T;C=T;D=T和A=F;B=F;C=F;D=F(沒有完全列舉)

⑤條件組合覆蓋:同一個判定里條件T,F的相互組合就是條件組合覆蓋。在例子中,第一個判定A=T,B=T;A=F,B=T;A=T,B=F;A=F,B=F。第二個判定C=T,D=T;C=F,D=T;C=T,D=F;C=F,D=F;

? ? ? ? 那么測試用例可以是A=T;B=T;C=T;D=T 和 A=F;B=T;C=F;D=T 和 A=T;B=F;C=T;D=F 和 A=F;B=F;C=F;D=F;

⑥路徑覆蓋:

記if(x>0&&y>0)判定為P1

記if(z<0)判定為P2

x>0,記為C1

y>0,記為C2

z<0,記為C3

則有,

測試用例設計
數據C1C2C3P1

P2

路徑
{x=3,y=3,z=-2}TTTTTa-b-d-f
{x=-3,y=3,z=-2}FTTFTa-c-d-f
{x=3,y=3,z=2}TTFTFa-b-e-f
{x=-3,y=15,z=-2}FTFFFa-c-e-f

白盒測試總結:

1°白盒測試主要應用于單元測試階段。

2°先執行靜態設計測試用例的方法,再執行動態設計測試用例的方法。

3°設計用例一般使用路徑測試,重點模塊追加使用邏輯覆蓋方法。

2、黑盒測試

黑盒測試就是不關心程序邏輯和內部結構,直接根據軟件需求規格說明書,進行功能的測試。看輸入數據之后,得到的結果是否和預期結果一致。

3、灰盒測試

灰盒測試是介于白盒測試和黑盒測試之間的一種測試。多用于集成測試時,它即關心數據的輸入輸出情況,又關心程序的內部結構。

灰盒測試即沒有白盒測試的詳細和完整,又沒有黑盒對軟件的覆蓋范圍。因此,灰盒測試不能替代黑盒測試,否則需要付出很大的代價,需要編寫很多的測試用例。

4、常見面試題

你知道的測試方法有哪些,哪種用的比較多?

常見的測試方法有白盒測試、灰盒測試、黑盒測試。開發人員主要用白盒測試和灰盒測試。測試人員主要用白盒測試和黑盒測試。對于測試人員來說,相較于白盒測試,黑盒測試用的更多一些。

四、按照測試階段分類

1、單元測試

與編碼同步進行,針對軟件的最小組成單元進行測試,主要采用白盒測試,從被測對象的內部結構出發設計測試用例。

測試階段:編碼前或編碼后

測試對象:最小模塊

測試人員:白盒測試工程師或開發工程師

測試依據:代碼和注釋+詳細設計文檔

測試方法:白盒測試

測試內容:模塊接口測試、局部數據結構測試、路徑測試、錯誤處理測試、邊界測試

2、集成測試

集成測試也稱聯合測試(聯調)、組裝測試,將程序模塊采用適當的集成策略組裝起來,對系統的接口及集成后的功能進行正確性檢測的測試工作。集成主要目的是檢查軟件單位之間的接口是否正確。

測試階段:一般單元測試之后進行

測試對象:模塊間的接口

測試人員:白盒測試工程師或開發工程師

測試依據:單元測試的模塊+概要設計文檔

測試方法:黑盒測試與白盒測試相結合

測試內容:模塊之間數據傳輸、模塊之間功能沖突、模塊組裝功能正確性、全局數據結構、單模塊缺陷對系統的影響

3、系統測試

對通過集成測試的系統進行整體測試,驗證系統功能性和非功能性需求的實現。

測試階段:集成測試通過之后

測試對象:整個系統(軟、硬件)

測試人員:黑盒測試工程師

測試依據:需求規格說明文檔

測試方法:黑盒測試

測試內容:功能、界面、可靠性、易用性、性能、兼容性、安全性等

①冒煙測試:主要是查看基本功能是否正常,正常的話再進行測試。

冒煙測試一般是在開發人員開發完畢提交給測試人員來進行測試時進行的。先進行冒煙測試,保證基本功能正常,不阻礙后續的測試。

②回歸測試:修改了舊代碼之后,重新進行測試以確認修改沒有引入新的錯誤或導致其它代碼產生錯誤。

回歸測試一般是在新版本上線后,對舊版本就行測試。在新功能上線后,對其它已上線的功能進行測試。

4、驗收測試

驗收測試也叫交付性測試,來用確定是否滿足驗收標準,由用戶或塔器授權機構決定是否接受系統。這是部署軟件之前的最后一個測試操作,也是技術測試的最后一個階段。

測試階段:系統測試通過之后

測試對象:整個系統(軟、硬件)

測試人員:主要是最終用戶或者需求方

測試依據:用戶需求、驗收標準

測試方法:黑盒測試

測試內容:同系統測試

五、按照是否手工測試

1、手工測試

手工測試就是由人去一個一個的輸入用例,然后觀察結果,和機器測試相對應,屬于比較原始但是必須的一個步驟。

2、自動化測試

就是在預設條件下運行系統或應用程序,評估運行結果,預設條件應包括正常條件和異常條件。簡單說,自動化測試是把以人為驅動的測試行為轉化為機器執行的一個過程。

3、自動化測試和手工測試的優缺點

自動化測試:

優點:①節約成本;②提高測試人員執行工作效率;③保障軟件的質量;

缺點:①對測試人員技術要求較高;②不能發散性測試;

手工測試:

優點:①對測試人員技術要求沒有自動化技術要求高;②可以進行發散性測試;

缺點:①效率低;②人員、時間成本比起自動化測試都比較高;

六、按照實施組織劃分

1、α測試(內測、a測)

α測試通常是公司內部的用戶在模擬實際操作環境下進行的測試。α測試的目的是評價軟件產品的FLURPS(即功能、可使用性、可靠性、性能和支持)。α測試不能由程序員或測試員完成。

2、β測試(公測、b測)

β測試由軟件的最終用戶們在一個或多個場所進行,這里就可以理解為,β測試是正式用戶中的一部分,他們在任意的場合來使用軟件,目的是為了發現軟件是否存在一系列的問題。

3、α測試與β測試的區別

①測試的場所不同:α測試是在公司內部進行測試的,但是β測試是在用戶環境下進行測試的;

α測試的環境是受開發方控制的,用戶的數量相對比較少,時間比較集中。

β測試的環境是不受開發方控制的,用戶的數量相對比較多,時間不集中。

②測試執行時機不同:通常是α測試通過后,再進行β測試

③測試持續時間長短不同:α測試沒有β測試持續時間長

七、按照測試地域劃分

1、國際化測試

2、本地測試

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/74331.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/74331.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/74331.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【Git】用Git命令克隆一個遠程倉庫、修改倉庫中的文件,并將更改推送到遠程倉庫

git clone ssh://gitgithub.com:2222/Mermaid28/Groove.git # SSH地址cd rfnvtoolecho "# rfnvtool" > README.md git add README.mdgit commit -m "add README" git push -u origin master 這個一系列的 Git 命令涉及到克隆一個遠程倉庫、修改倉庫中…

關于MTU的使用(TCP/IP網絡下載慢可能與此有關)

參考鏈接&#xff1a;告訴你mtu值怎么設置才能網速最好&#xff01; -Win7系統之家 出現網絡速度被限制&#xff0c;可能與MTU值相關&#xff0c;先查看下本機的MTU winR,然后輸入&#xff1a;netsh interface ipv4 show subinterfaces &#xff0c;查看自己網絡中的MTU&…

07_GRU模型

GRU模型 雙向GRU筆記:https://blog.csdn.net/weixin_44579176/article/details/146459952 概念 GRU&#xff08;Gated Recurrent Unit&#xff09;也稱為門控循環單元&#xff0c;是一種改進版的RNN。與LSTM一樣能夠有效捕捉長序列之間的語義關聯&#xff0c;通過引入兩個&qu…

Playwright + MCP:用AI對話重新定義瀏覽器自動化,效率提升300%!

一、引言&#xff1a;自動化測試的“瓶頸”與MCP的革新 傳統自動化測試依賴開發者手動編寫腳本&#xff0c;不僅耗時且容易因頁面動態變化失效。例如&#xff0c;一個簡單的登錄流程可能需要開發者手動定位元素、處理等待邏輯&#xff0c;甚至反復調試超時問題。而MCP&#xf…

網絡爬蟲-4:jsonpath+實戰

1.jsonpath 2.通過jsonpath實戰 一.Jasonpath核心符號 1)$: 含義&#xff1a;表示 JSON 文檔的根節點。 用法&#xff1a;所有 JSONPath 表達式都以 $ 開頭&#xff0c;表示從根節點開始查詢。 {"store": {"book": [{"title": "Book 1&…

GD32 ARM單片機開發規范檢查清單 GD32嵌入式C代碼檢查清單

GD32 ARM單片機開發規范檢查清單 以下檢查清單基于您的編程規范制定&#xff0c;可用于代碼審查和自檢過程。通過逐項檢查&#xff0c;確保代碼符合項目規范要求。 #mermaid-svg-Ye0FEIS4ZoXDXqaH {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:…

求職招聘網站源碼,找工作招工系統,支持H5和各種小程序

招聘找活招工平臺系統源碼 招聘求職找工作軟件 發布信息積分充值招聘系統,里面帶纖細教程 功能介紹: 招工小程序主要針對工地招工工人找工作,工地可以發布招工信息,工人可以發布找活信息,招工信息可以置頂,置頂需要積分,積分可以通過簽到、分享邀請好友、充值獲取,后…

《Oracle DBA入門實戰:十大高頻問題詳解與避坑指南》

Oracle DBA 入門作業十問十答 本文為 Oracle DBA 入門作業整理&#xff0c;涵蓋工具使用、配置管理及權限控制等核心知識點&#xff0c;適合新手快速上手。 如有疑問或補充&#xff0c;歡迎評論區交流&#xff01; 1. DBA 常用工具有哪些&#xff1f; Oracle Universal Instal…

解決用戶同時登錄輪詢獲取用戶信息錯亂,使用WebSocket和Server-Sent Events (SSE)

為什么更推薦WebSocket Server-Sent Events (SSE) 是一種服務器向客戶端推送數據的單向通信協議&#xff0c;適合某些場景&#xff0c;在解決用戶同時登錄和實時獲取用戶信息的問題上&#xff0c;WebSocket 是更好的選擇。 1. SSE 的局限性 單向通信 SSE 是單向的&#xff0…

發票查驗/發票驗真如何用Java實現接口調用

一、什么是發票查驗&#xff1f;發票驗真接口&#xff1f; 輸入發票基本信息發票代碼、發票號碼、開票日期、校驗碼后6位、不含稅金額、含稅金額&#xff0c;核驗發票真偽。 該接口也適用于機動車、二手車銷售發票、航空運輸電子客票、鐵路電子客票等。 二、如何用Java實現接口…

html5-qrcode前端打開攝像頭掃描二維碼功能

實現的效果如圖所示&#xff0c;全屏打開并且掃描到二維碼后彈窗提醒&#xff0c;主要就是使用html5-qrcode這個依賴庫&#xff0c;html5-qrcode開源地址&#xff1a;GitHub - mebjas/html5-qrcode: A cross platform HTML5 QR code reader. See end to end implementation at:…

cpp-友元

理解 C 中的友元&#xff08;Friend&#xff09; 在 C 語言中&#xff0c;封裝&#xff08;Encapsulation&#xff09; 是面向對象編程的重要特性之一。它允許類將數據隱藏在私有&#xff08;private&#xff09;或受保護&#xff08;protected&#xff09;成員中&#xff0c;…

JavaWeb基礎-HTTP協議、請求協議、響應協議

一. HTTP協議 1. HTTP協議&#xff1a;Hyper Text Transfer Protocol&#xff0c;超文本傳輸協議&#xff0c;規定了瀏覽器和服務器之間數據傳輸的規則 2. HTTP協議特點&#xff1a; ① 基于TCP協議&#xff1a;面向鏈接&#xff0c;安全 ② 基于請求-響應模型的&#xff1a;一…

search_fields與filterset_fields的使用

在Django中&#xff0c;search_fields 和 filterset_fields 可以在視圖類中使用&#xff0c;尤其是在 Django REST Framework (DRF) 中。它們分別用于實現搜索和過濾功能。以下是它們在視圖類中的具體使用方法。 1. search_fields 在視圖類中的使用 search_fields 是 DRF 中 S…

數據建模流程: 概念模型>>邏輯模型>>物理模型

數據建模流程 概念模型 概念模型是一種高層次的數據模型&#xff0c;用于描述系統中的關鍵業務概念及其之間的關系。它主要關注業務需求和數據需求&#xff0c;而不涉及具體的技術實現細節。概念模型通常用于在項目初期幫助業務人員和技術人員達成共識&#xff0c;確保對業務需…

在 Ubuntu 中用 Docker 安裝 RAGFlow

一、安裝 1.前提條件 CPU > 4 核 RAM > 16 GB Disk > 50 GB Docker > 24.0.0 & Docker Compose > v2.26.1 安裝docker&#xff1a;在Ubuntu中安裝Docker并配置國內鏡像 2.設置 vm.max_map_count #設置 vm.max_map_count 不小于 262144# 查看 sysctl vm.…

Java隨機生成n位驗證碼

Java學習筆記 今天寫一個隨機生成n位的驗證碼&#xff0c;包含字母大小寫和數字&#xff0c;直接見代碼。 package com.itheima.hello;// 生成一個隨機位數的驗證碼 public class ScannerDemo1 {public static void main(String[] args){System.out.println(getCode(4));Syst…

go復習目錄

全部都是博主的學習筆記&#xff0c;放著鏈接用的&#xff0c;自己收藏&#xff0c;包含基礎內容、go三方包、vue、數據結構、web框架、設計模式、docker、go連接kafka、redis、grpc、中間件 文章目錄 基礎內容go三方包vue數據結構web框架設計模式dockergo連接kafkaredisgrpc中…

23種設計模式-創建型模式-抽象工廠

文章目錄 簡介場景問題1. 風格一致性失控2. 對象創建硬編碼3. 產品族管理失效 解決總結 簡介 抽象工廠是一種創建型設計模式&#xff0c;可以生成相關對象系列&#xff0c;而無需指定它們的具體類。 場景 假設你正在寫一個家具店模擬器。 你的代碼這些類組成&#xff1a; 相…

案例:網絡命名空間模擬隔離主機場景

場景描述 假設我們需要在同一臺物理機上模擬兩臺獨立的主機&#xff08;Host A 和 Host B&#xff09;&#xff0c;它們分別位于不同的網絡命名空間中&#xff0c;并通過虛擬以太網對&#xff08;veth pair&#xff09;進行通信。目標是展示網絡命名空間的隔離性和跨命名空間的…