Web測(cè)試原理與實(shí)踐

web測(cè)試原理與實(shí)踐分為四部分:

一、軟件測(cè)試階段

二、web測(cè)試基礎(chǔ)

三、web測(cè)試實(shí)踐

四、然之登錄測(cè)試點(diǎn)分析

以下是對(duì)這四部分內(nèi)容的細(xì)化:


一、軟件測(cè)試階段:

1.單元測(cè)試

2.集成測(cè)試----接口測(cè)試,所用工具:fiddler、jmeter、postman

3.系統(tǒng)測(cè)試----web測(cè)試、客戶端測(cè)試、app測(cè)試

這三種測(cè)試(web、客戶端、app)分別都含有三種測(cè)試:

3.1 功能測(cè)試 ? ?3.2 安全測(cè)試 ? ?3.3 性能測(cè)試

3.1 功能測(cè)試:

1)手工測(cè)試功能(測(cè)試流程)

2)自動(dòng)化測(cè)試功能(GUI自動(dòng)測(cè)試)工具:

selenium、IBM rational、QTP、silktest、Appium(對(duì)app測(cè)試而言)

3.2 安全測(cè)試 ?工具:fiddler工具(抓包,查看用戶密碼是否有加密、服務(wù)器端對(duì)輸入數(shù)據(jù)是否有設(shè)置了斷點(diǎn)進(jìn)行二次校驗(yàn))

3.3 性能測(cè)試 ?工具:jmeter(多線程數(shù)服務(wù)器響應(yīng)時(shí)間)、loadrunner


二、web測(cè)試基礎(chǔ):

1.網(wǎng)絡(luò)基礎(chǔ)知識(shí) ? ?2.web系統(tǒng)基礎(chǔ) ? ?3.web工作原理 ? ?4.深入web核心技術(shù) ? ?5.web環(huán)境分類

1.網(wǎng)絡(luò)基礎(chǔ)知識(shí)

1.1 internet----互聯(lián)網(wǎng)(外網(wǎng)),連接不同網(wǎng)絡(luò)(根據(jù)不同的TCP/IP或OSI協(xié)議)

1.2 intranet----內(nèi)部網(wǎng)(內(nèi)網(wǎng)),企業(yè)內(nèi)部防火墻以內(nèi)的互聯(lián)網(wǎng)

2.web系統(tǒng)基礎(chǔ)

2.1 B/S 瀏覽器/服務(wù)器:屬于特殊的C/S,必須用http協(xié)議,是一個(gè)通用的客戶端

擴(kuò)展:ActiveX(安全控件)、Ajax(輸入框下面的提示語)、RIA(富互聯(lián)網(wǎng)應(yīng)用)

2.2 C/S 客戶端/服務(wù)器:可以使用任何通信協(xié)議

3.web工作原理(3.1 www、3.2 URL 、3.3 http協(xié)議、3.4工具)

3.1 www

3.2 URL:

1)協(xié)議類型(http/https)

2)主機(jī)名(IP/域名)

3) 端口號(hào)(默認(rèn)端口:http--80/https--443)

4)頁面文件:路徑+文件名(顯示/省略默認(rèn)頁面)

5)參數(shù)

3.3 http協(xié)議:1)http協(xié)議組成 ? ?2)http協(xié)議的應(yīng)用、

1)http協(xié)議組成:請(qǐng)求+響應(yīng)

a.請(qǐng)求(請(qǐng)求行+請(qǐng)求頭+請(qǐng)求正文):

? 請(qǐng)求行(get獲取/post傳遞(請(qǐng)求方式)+url協(xié)議版本)

? 請(qǐng)求頭(cookie)

? 請(qǐng)求正文:post請(qǐng)求方式有請(qǐng)求正文/get的請(qǐng)求方式一定沒有請(qǐng)求正文

b.響應(yīng)(狀態(tài)行+響應(yīng)頭+響應(yīng)正文):

? 狀態(tài)行:協(xié)議版本+狀態(tài)碼

? ?狀態(tài)碼:

? 1xx 指示消息,請(qǐng)求繼續(xù)處理

? 2xx 請(qǐng)求被成功接受

? 3xx 重定向,要完成請(qǐng)求必須進(jìn)行下一步操作(跳轉(zhuǎn)頁面)

? 4xx 客戶端錯(cuò)誤(語法錯(cuò)誤或請(qǐng)求無法實(shí)現(xiàn)):401 unauthorized ?/ ?404 not found

? 5xx 服務(wù)器錯(cuò)誤,無法實(shí)現(xiàn)合法的請(qǐng)求

? 狀態(tài)消息:1xx,2xx,3xx,4xx,5xx

? 響應(yīng)頭(session)

? 響應(yīng)正文

2)http協(xié)議的應(yīng)用:web安全、接口、web性能測(cè)試

web安全:.

? webform--查看密碼是否加密

? 設(shè)置斷點(diǎn)--修改webform里的數(shù)據(jù),檢測(cè)服務(wù)器端代碼有沒有做2次校驗(yàn)

3.4 工具:然之網(wǎng)頁+fiddler

fiddler:設(shè)置過濾(勾選use Filter)

? 輸入框輸入網(wǎng)址

? 查看包(選擇其中一條記錄,雙擊,選擇inspectors--raw...)


4.深入web核心技術(shù)::4.1 網(wǎng)頁分類 ? ?4.2 網(wǎng)站技術(shù)

4.1 網(wǎng)頁分類:1)靜態(tài)網(wǎng)頁 ? ?2)動(dòng)態(tài)網(wǎng)頁

1)靜態(tài)網(wǎng)頁:用html語言編寫,內(nèi)容固定,上傳到web服務(wù)器,在瀏覽器前臺(tái)顯示。

2)動(dòng)態(tài)網(wǎng)頁:

a.在瀏覽器前臺(tái)顯示,后臺(tái)管理(增-insert into、刪-delete、查-select、改-update)

b.關(guān)鍵內(nèi)容在服務(wù)器端生成,能夠訪問服務(wù)器端的數(shù)據(jù)庫,具有交互性,不利于搜索引擎信息收集

c.腳本引擎:php、jsp、aspx

ps:腳本引擎是計(jì)算機(jī)編程語言的解釋器,是腳本運(yùn)行所需的框架,提供可供腳本調(diào)用的二進(jìn)制代碼,解釋執(zhí)行用戶的程序文本。

d.網(wǎng)站技術(shù):服務(wù)器端、客戶端

? 服務(wù)器端:web服務(wù)器、應(yīng)用服務(wù)器、DB服務(wù)器

? web服務(wù)器--接收http請(qǐng)求,處理http請(qǐng)求,發(fā)送http響應(yīng)給瀏覽器(可以直接發(fā)送html頁面)

應(yīng)用服務(wù)器--處理代碼和建立數(shù)據(jù)庫鏈接:

腳本引擎(php、jsp、aspx)

-- php(php語言--apache、php應(yīng)用服務(wù)器環(huán)境)

-- jsp(java語言--tomcat)

--aspx(c#語言--IIS網(wǎng)頁服務(wù)組件,服務(wù)于網(wǎng)絡(luò)發(fā)布信息)

DB服務(wù)器:執(zhí)行SQL語句,存儲(chǔ)數(shù)據(jù)

PS:測(cè)試環(huán)境常見架構(gòu):

-- PHP開發(fā)語言--apache--mysql--linux

--java開發(fā)語言--tomcat:oracle-linux+mysql

--C#(C sharp,類似java)開發(fā)語言--IIS--sqlserver--windows server ? ? ? ? ??

? 客戶端:

瀏覽器---發(fā)送http請(qǐng)求并接收服務(wù)器發(fā)來的http響應(yīng)

瀏覽器渲染過程(使用fiddler抓包查看):自動(dòng)發(fā)起網(wǎng)頁包含鏈接的請(qǐng)求、自動(dòng)緩存靜態(tài)資源(清除瀏覽器)

靜態(tài)資源:HTML、CSS、JS(JavaScript-直譯式腳本語言,其解釋器為javascript引擎)、圖片、文檔、音頻、視頻、文檔


5. web環(huán)境分類:5.1 開發(fā)環(huán)境 ? ?5.2 測(cè)試環(huán)境 ? ?5.3生產(chǎn)環(huán)境

5.1 開發(fā)環(huán)境:開發(fā)人員用,客戶端和服務(wù)器是同一臺(tái)機(jī)器。

客戶端:操作系統(tǒng)(winxp/win7/8/10,蘋果操作系統(tǒng))、瀏覽器(IE、火狐、谷歌、蘋果)

服務(wù)器:操作系統(tǒng)(winxp/win7/8/10,蘋果操作系統(tǒng)) 、自己電腦

5.2 測(cè)試環(huán)境:測(cè)試人員用,客戶端和服務(wù)器不是同一臺(tái)電腦,客戶端多臺(tái)

客戶端:操作系統(tǒng)(winxp/win7/8/10,蘋果操作系統(tǒng))、瀏覽器(IE、火狐、谷歌、蘋果)

服務(wù)器:操作系統(tǒng)(linux、windows server)

安裝網(wǎng)頁工具:web服務(wù)器、應(yīng)用服務(wù)器、DB服務(wù)器

發(fā)布網(wǎng)頁(對(duì)內(nèi)):

? 把網(wǎng)頁放到指定文件夾--從代碼庫取代碼到本機(jī)

? 把代碼通過xftp工具上傳到服務(wù)器上/tmp

? 修改權(quán)限,解壓縮

? 復(fù)制解壓后的文件夾到發(fā)布網(wǎng)頁指定的文件夾

? 啟動(dòng)web服務(wù)器、DB服務(wù)器

? 打開網(wǎng)址、安裝網(wǎng)頁

5.3 生產(chǎn)環(huán)境:指正式提供對(duì)外服務(wù)的線上環(huán)境

客戶端:廣大的用戶

服務(wù)器:操作系統(tǒng)(Linux、Windows server)

安裝網(wǎng)頁工具(web服務(wù)器、應(yīng)用服務(wù)器、DB服務(wù)器)

發(fā)布網(wǎng)頁(對(duì)外)-把網(wǎng)頁放到指定文件夾

?服務(wù)器有多臺(tái),集群環(huán)境(負(fù)載均衡、故障轉(zhuǎn)移)


三、web測(cè)試實(shí)踐

1.web測(cè)試的要求 ? ?2.web測(cè)試的對(duì)象(測(cè)試點(diǎn))

1.web測(cè)試的要求:1.1 需求 ? ?1.2 用戶

1.1需求:

1)功能:功能測(cè)試、易用性測(cè)試、兼容性測(cè)試

2)安全

3)性能

?2.web測(cè)試的對(duì)象(測(cè)試點(diǎn))

系統(tǒng)測(cè)試階段:2.1 功能 ? 2.2 性能 ? ?2.3安全

2.1功能:1)功能測(cè)試 ? ?2)易用性測(cè)試 ? ?3)兼容性測(cè)試

1)功能測(cè)試

?web的業(yè)務(wù)邏輯:OA系統(tǒng)、理財(cái)系統(tǒng)、財(cái)務(wù)系統(tǒng)、電子商務(wù)系統(tǒng)、銀行系統(tǒng)

?web的數(shù)據(jù)行為:增加(數(shù)據(jù)流的順序--不同模塊/不同賬戶)、刪除、查找、修改

?web的頁面元素(控件):

--頁面部分/UI測(cè)試:清單;不同的分辨率和不同的瀏覽器版本是否顯示;不同大小的窗口顯示是否正確、美觀;特殊效果是否顯示-如特殊字體效果、動(dòng)畫效果;頁面都有相應(yīng)的title

--頁面元素部分(通用測(cè)試點(diǎn)):

----鏈接

----表單(如圖):


----列表:排序、分頁、搜索

----日歷控件(如圖):



----特殊字符

----轉(zhuǎn)義字符

----刷新

----瀏覽器前進(jìn)后退

----上傳下載(如圖):


----導(dǎo)入導(dǎo)出(如圖):


----快捷鍵:Tab、enter

----js錯(cuò)誤



?測(cè)試點(diǎn)的拆分:

2)易用性測(cè)試

3)兼容測(cè)試(如圖):


2.2 性能:1)原理 ? ?2)工具

1)原理:http協(xié)議

2)工具:

?badboy(如圖):


?jmeter(如圖):


2.3 安全:1)原理 ? ?2)工具 ? ?3)策略

1)原理:

?http協(xié)議

?cookie和session:作用域、有效期

2)工具:fiddler

3)策略:

?認(rèn)證:目的是為了認(rèn)出用戶是誰(如圖)


?授權(quán)/權(quán)限(如圖):


?文件上傳(如圖):


?二次校驗(yàn)(如圖):




四、然之登錄測(cè)試點(diǎn)分析:

1.功能 ? ?2.安全測(cè)試 ? ?3.性能測(cè)試


1.功能:1.1 功能測(cè)試 ? ?1.2 可用性測(cè)試 ? ?1.3 兼容測(cè)試

1.1 功能測(cè)試:1)登錄功能、2)頁面其他元素

1)登錄功能:

? 用戶名:

有效--用戶名正確/前空格+正確用戶名/正確用戶+后空格

無效--為空/不存在的用戶名/大小寫區(qū)分用戶名/正確用戶名,中間含空格/全角英文用戶名

邊界值--使用最長(zhǎng)用戶名登錄/注冊(cè)模塊用最長(zhǎng)的用戶名注冊(cè)成功

? 密碼:

有效--密碼正確

無效--為空/(前空格/后空格/中間空格)+正確密碼/密碼大小寫區(qū)分/密碼錯(cuò)誤/全角正確密碼

邊界值--使用最長(zhǎng)密碼登錄/注冊(cè)模塊用最長(zhǎng)的密碼注冊(cè)成功

? 正交法:用戶名、密碼兩種取值的組合測(cè)試

? 單模塊場(chǎng)景法:?jiǎn)斡脩舻卿浲顺鲈俚卿?多用戶連續(xù)登錄/多瀏覽器同時(shí)登錄

? 多模塊場(chǎng)景法:注冊(cè)用戶再登錄/禁用用戶再登錄/鎖定用戶再登錄/刪除用戶再登錄

2)頁面其他元素:

? 語言切換下拉框

? 登錄按鈕

? 保存登錄復(fù)選框

? 版本鏈接

1.2 可用性測(cè)試:

? 頁面元素風(fēng)格

? Tab鍵響應(yīng)

? Tab順序

? 回車鍵響應(yīng)

1.3 兼容測(cè)試:

? 操作系統(tǒng)兼容

? ?瀏覽器兼容

? 正交法組合:windows:ie/firefox/chrome/safari;蘋果操作系統(tǒng):safari/ie/firefox/chrome;andriod:瀏覽器; ios:瀏覽器。

2. 安全測(cè)試:2.1 認(rèn)證、2.2 授權(quán)、2.3 腳本攻擊、2.4 SQL注入

2.1 認(rèn)證:

1)密碼密文顯示

2)密碼文本框不支持復(fù)制

3)敏感信息加密傳輸

4)同一賬號(hào)多次登錄失敗,檢查賬號(hào)是否鎖定

5)錯(cuò)誤登錄ip限制

6)同一賬號(hào)在同一類型設(shè)備上重復(fù)登錄

7)同一賬號(hào)在不同類型設(shè)備上重復(fù)登錄

8)session測(cè)試:

? 復(fù)制登錄后的頁面URL,在退出后直接打開

? 登錄成功后,經(jīng)過一段時(shí)間,檢查是否需要重新登錄

? session的過期時(shí)間設(shè)置是否合理

9)cookie測(cè)試:

? 有效時(shí)間內(nèi)免登錄

? 無效時(shí)間內(nèi)需輸入用戶名、密碼登錄

? 用于保存一些關(guān)鍵數(shù)據(jù)的cookie是否被加密

? 登錄時(shí)應(yīng)該使用圖片驗(yàn)證碼(防止黑客破解密碼,是一種區(qū)分用戶是計(jì)算機(jī)和人的公共自動(dòng)程序)

2.2 授權(quán):不同權(quán)限的用戶登錄是否只能訪問被授權(quán)的模塊和功能

2.3 腳本攻擊(如用戶甲在一些論壇或留言本發(fā)布含html或javascript的帖子,用戶乙在瀏覽該帖時(shí),惡意腳本就會(huì)執(zhí)行,盜取取用戶乙的session信息)

2.4 SQL注入(輸入內(nèi)容,有單引號(hào)‘ 致用戶名為空,可越過密碼登錄)


3. 性能測(cè)試 ? ? ? ? ? ? ? ? ??

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容