對(duì)一個(gè)即將上線的網(wǎng)站,如何做一個(gè)較完整的Web應(yīng)用/網(wǎng)站測(cè)試?

PS:本文轉(zhuǎn)載自黑馬測(cè)試高贊知乎文章
鏈接:https://www.zhihu.com/question/20463394/answer/2666451672

Web應(yīng)用,也叫做網(wǎng)站,相對(duì)于客戶端應(yīng)用來(lái)說(shuō),Web應(yīng)用無(wú)需單獨(dú)安裝,在瀏覽器上即可使用其功能。
web應(yīng)用的主要開(kāi)發(fā)流程如下:

在網(wǎng)站開(kāi)發(fā)的整個(gè)流程中,測(cè)試驗(yàn)收是上線發(fā)布前的最后一個(gè)環(huán)節(jié),測(cè)試是否到位、功能驗(yàn)收是否完整,直接影響到整個(gè)網(wǎng)站的質(zhì)量,因此,測(cè)試驗(yàn)收是網(wǎng)站開(kāi)發(fā)中非常重要的一環(huán)。
回到主題:如何做一個(gè)完整的測(cè)試?
要做到完整的測(cè)試,就要按照統(tǒng)一的測(cè)試流程進(jìn)行,這樣可以很大程度避免遺漏。
對(duì)于一個(gè)web項(xiàng)目的測(cè)試,一般的測(cè)試流程是:功能測(cè)試→兼容性測(cè)試→性能測(cè)試→服務(wù)器壓力測(cè)試
下面我們將按照這個(gè)順序來(lái)展開(kāi),測(cè)試方法和工具也包含在其中。所以本文結(jié)構(gòu)如下:
1、功能測(cè)試如何做(測(cè)試方法+工具);
2、兼容性測(cè)試如何做(測(cè)試方法+工具);
3、性能測(cè)試如何做(測(cè)試方法+工具);
4、服務(wù)器壓力測(cè)試(測(cè)試方法+工具)
5、學(xué)習(xí)視頻推薦
一、功能測(cè)試如何做?
1、冒煙測(cè)試
為了避免人力的浪費(fèi),在正式進(jìn)入測(cè)試前要先做冒煙測(cè)試。
冒煙測(cè)試是選擇若干功能或主要流程,通過(guò)簡(jiǎn)單的測(cè)試,來(lái)驗(yàn)證應(yīng)用的可用性。
舉個(gè)栗子:
某個(gè)網(wǎng)站,冒煙測(cè)試中發(fā)現(xiàn)登錄登不上,后續(xù)的流程被阻塞,這樣的情況就是冒煙測(cè)試不通過(guò),需要打回重新提測(cè)。
在冒煙測(cè)試階段,一般來(lái)說(shuō)無(wú)需關(guān)注邏輯和數(shù)據(jù)的正確性,只要應(yīng)用能夠正常點(diǎn)擊和跳轉(zhuǎn),在可用性沒(méi)有問(wèn)題后,就可以進(jìn)入功能測(cè)試了。
功能測(cè)試是web應(yīng)用測(cè)試的重要環(huán)節(jié),可以分為前端和后端。

2、前端測(cè)試
在前端測(cè)試中,主要關(guān)注以下幾個(gè)方面:
1)ui:驗(yàn)證頁(yè)面的顏色、字號(hào)、文案等是否與預(yù)期一致
2)鏈接:測(cè)試鏈接的有效性和跳轉(zhuǎn)的正確性
3)表單:測(cè)試用戶的注冊(cè)、編輯提交等是否正常
4)流程:模擬用戶使用場(chǎng)景進(jìn)行測(cè)試,測(cè)試用戶可能進(jìn)行的所有操作,比如新增、修改、刪除、查詢等
注:因?yàn)槭切马?xiàng)目,功能還未定型,所以還用不到前端自動(dòng)化測(cè)試,手動(dòng)測(cè)試是相對(duì)來(lái)說(shuō)投入產(chǎn)出比最好的測(cè)試方法。
3、后端測(cè)試
后端測(cè)試主要關(guān)注:
針對(duì)接口文檔規(guī)范展開(kāi)測(cè)試,包含必填、枚舉值校驗(yàn)、臨界值校驗(yàn)、長(zhǎng)度校驗(yàn)、以及容錯(cuò)校驗(yàn)
業(yè)務(wù)邏輯測(cè)試:接口中各個(gè)參數(shù)之間的關(guān)系,比如:數(shù)學(xué)關(guān)系:依賴關(guān)系、常識(shí)
異常流測(cè)試,包括重復(fù)申請(qǐng)、是否有密等邏輯。
數(shù)據(jù)存儲(chǔ),接口請(qǐng)求后,檢查存儲(chǔ)接口數(shù)據(jù)的各個(gè)表數(shù)據(jù)是否與預(yù)期一致。
4、功能工具使用:常用的接口測(cè)試工具推薦Postman,在做接口測(cè)試的時(shí)候,Postman相當(dāng)于一個(gè)客戶端,它可以模擬用戶發(fā)起的各類HTTP請(qǐng)求,將請(qǐng)求數(shù)據(jù)發(fā)送至服務(wù)端,獲取對(duì)應(yīng)的響應(yīng)結(jié)果。

二、兼容性測(cè)試
在功能測(cè)試完成后,就可以進(jìn)入兼容性測(cè)試了。
由于web應(yīng)用是在瀏覽器上使用,所以瀏覽器的種類、版本及設(shè)備的分辨率可能會(huì)影響到應(yīng)用的正常顯示和交互體驗(yàn)
現(xiàn)實(shí)中,用戶使用的設(shè)備、瀏覽器類型、系統(tǒng)版本等實(shí)在太多,要把所有可能的組合都測(cè)試一遍兼容性基本是不可能的。
通常,在兼容性測(cè)試的時(shí)候,只需覆蓋主流的設(shè)備及瀏覽器類型即可。

工具使用:
由于瀏覽器種類、版本較多,安裝卸載會(huì)耗費(fèi)較多時(shí)間,因此推薦使用云測(cè)平臺(tái),可以選擇不同類型和版本的瀏覽器進(jìn)行測(cè)試。
商業(yè)化的云測(cè)平臺(tái)有很多,一般由公司統(tǒng)一采購(gòu),可以根據(jù)實(shí)際需要選擇。
三、性能測(cè)試
這里說(shuō)的性能是指web(前端)的性能。
web 的性能一定程度上影響了用戶留存率,Google DoubleClick 研究表明:如果一個(gè)移動(dòng)端頁(yè)面加載時(shí)長(zhǎng)超過(guò) 3 秒,用戶就會(huì)放棄而離開(kāi)。BBC 發(fā)現(xiàn)網(wǎng)頁(yè)加載時(shí)長(zhǎng)每增加 1 秒,用戶就會(huì)流失 10%。
如果網(wǎng)站打開(kāi)很慢,點(diǎn)擊一個(gè)鏈接好幾分鐘才會(huì)響應(yīng),這樣的使用體驗(yàn)必然會(huì)勸退用戶。因此對(duì)于前端的性能測(cè)試是不可或缺的。
google 開(kāi)發(fā)者提出了一種 RAIL 模型來(lái)衡量應(yīng)用性能,即 response(響應(yīng))、animation(動(dòng)畫)、idle(空閑)與load(加載)。

RAIL 模型的廣泛使用關(guān)鍵指標(biāo)如下:

工具使用:PageSpeed
PageSpeed 是 google 一個(gè)開(kāi)源的自動(dòng)化工具,安裝 PageSpeed?擴(kuò)展程序運(yùn)行即可
報(bào)告結(jié)果如圖:

該工具功能豐富,報(bào)告也非常詳細(xì),并給出了優(yōu)化建議,根據(jù)測(cè)試報(bào)告做對(duì)應(yīng)的優(yōu)化即可。

四、壓力測(cè)試
這里說(shuō)的壓力測(cè)試是指服務(wù)器壓力測(cè)試。
為什么要做壓力測(cè)試?
舉幾個(gè)栗子:
某微博熱搜因?yàn)樘鸨斐煞?wù)器癱瘓
雙11某電商平臺(tái)因訂單量太大而奔潰
春運(yùn)購(gòu)票第一天某購(gòu)票平臺(tái)宕機(jī)
這些都是因?yàn)槎虝r(shí)間內(nèi)大量用戶訪問(wèn),對(duì)服務(wù)器的壓力太大導(dǎo)致服務(wù)奔潰。
因此,對(duì)于一個(gè)新的網(wǎng)站,我們有必要通過(guò)壓力測(cè)試來(lái)評(píng)估是否能夠承載預(yù)期的訪問(wèn)壓力。
在壓測(cè)過(guò)程中,一般關(guān)注下面幾個(gè)指標(biāo):qps(處理的請(qǐng)求量)、rt(響應(yīng)時(shí)間)、error(報(bào)錯(cuò)率)、cup(cpu使用率)、mem(內(nèi)存占用情況)、load(負(fù)載)、traffic(網(wǎng)絡(luò)速率)。
通過(guò)觀察qps、rt、error等關(guān)鍵指標(biāo),找到服務(wù)器的性能瓶頸,如果低于預(yù)期,則需要調(diào)優(yōu)。
通過(guò)壓力測(cè)試,提前發(fā)現(xiàn)服務(wù)器瓶頸,及時(shí)優(yōu)化,避免網(wǎng)站一上線就奔潰。
工具:壓測(cè)常用的工具有l(wèi)oadrunner和jmeter。
Jmeter 是一款使用Java開(kāi)發(fā)的,開(kāi)源免費(fèi)的測(cè)試工具, 主要用來(lái)做性能測(cè)試,JMeter 可以用于對(duì)服務(wù)器、網(wǎng)絡(luò)或?qū)ο竽M巨大的負(fù)載,有豐富的圖形界面+腳本配置,方便易用。
LoadRunner 是一種預(yù)測(cè)系統(tǒng)行為和性能的負(fù)載測(cè)試工具。通過(guò)以模擬上千萬(wàn)用戶實(shí)施并發(fā)負(fù)載及實(shí)時(shí)性能監(jiān)測(cè)的方式來(lái)確認(rèn)和查找問(wèn)題。


五、學(xué)習(xí)視頻推薦
最后總結(jié)一下,對(duì)于即將上線的web應(yīng)用,完整的測(cè)試環(huán)節(jié)包含:功能測(cè)試、兼容性測(cè)試、性能測(cè)試、壓力測(cè)試。做完這些環(huán)節(jié)的測(cè)試,就可以放心上線了。
最后推薦一個(gè)較完整的Web網(wǎng)站測(cè)試系列視頻,

系列學(xué)習(xí)web網(wǎng)站測(cè)試,可以從上面這個(gè)視頻開(kāi)始,使用TpShop商城,手把手教你如何做網(wǎng)站測(cè)試。

若你是對(duì)測(cè)試不太了解的測(cè)試小萌新,有太多太多對(duì)測(cè)試的疑惑(前途、薪資、技術(shù)含量、男生是否可以干.....),強(qiáng)烈推薦你觀看《測(cè)試小白必看:學(xué)習(xí)軟件測(cè)試必問(wèn)的100個(gè)問(wèn)題,從此貼開(kāi)始》,相信能掃除掉你心目中90%以上的常見(jiàn)問(wèn)題。
《100個(gè)常見(jiàn)問(wèn)題鏈接》:http://bbs.itheima.com/thread-507947-1-1.html

最后,為方便大家自學(xué)軟件測(cè)試,特意給大家準(zhǔn)備了一份13G的超實(shí)用干貨學(xué)習(xí)資源,涉及的內(nèi)容非常全面。
包括軟件學(xué)習(xí)路線圖,黑馬50多天的上課視頻、16個(gè)突擊實(shí)戰(zhàn)項(xiàng)目,80余個(gè)軟件測(cè)試用軟件,37份測(cè)試文檔,70個(gè)軟件測(cè)試相關(guān)問(wèn)題,40篇測(cè)試經(jīng)驗(yàn)級(jí)文章,上千份測(cè)試真題分享,還有2020軟件測(cè)試面試寶典,還有軟件測(cè)試求職的各類精選簡(jiǎn)歷,希望對(duì)大家有所幫助…..?
《2022黑馬測(cè)試學(xué)習(xí)路線圖鏈接》:http://bbs.itheima.com/thread-405757-1-1.html
