大學(xué)本科「軟件測(cè)試」項(xiàng)目實(shí)訓(xùn)(二)
學(xué)完5天的測(cè)試課程能夠滿足企業(yè)功能測(cè)試崗位的需求。
一、軟件測(cè)試的過(guò)程
V模型的左邊對(duì)應(yīng)軟件開(kāi)發(fā)過(guò)程:需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼
V模型的右邊對(duì)應(yīng)軟件測(cè)試過(guò)程:?jiǎn)卧獪y(cè)試、集成測(cè)試、系統(tǒng)測(cè)試、驗(yàn)收測(cè)試。
基于軟件測(cè)試的每個(gè)過(guò)程詳解

什么是單元測(cè)試?
什么叫單元--單元其實(shí)就是程序功能的最小單位的簡(jiǎn)稱(chēng)。
例如:函數(shù)是實(shí)現(xiàn)某個(gè)需求的功能。
案例:是一個(gè)自我的介紹功能。
所有的軟件產(chǎn)品都是由程序員依據(jù)需求規(guī)格說(shuō)明書(shū)的要求按照一定的功能來(lái)實(shí)現(xiàn)編碼的過(guò)程。

第一個(gè)功能指的是一個(gè)函數(shù)或者方法,其中單獨(dú)的每個(gè)語(yǔ)句塊的變量的定義可以稱(chēng)之為最小單元,這個(gè)就是單元測(cè)試。
單元測(cè)試屬于白盒測(cè)試的一種,白盒測(cè)試是其實(shí)代碼的,所以要想做好單元測(cè)試需要測(cè)試人員具備一定的編程功底。
在國(guó)內(nèi)單元測(cè)試一般是由程序員來(lái)做的,市場(chǎng)上單純的單元測(cè)試崗位很少,基于作為一名專(zhuān)業(yè)的測(cè)試人員不僅要會(huì)單元測(cè)試、集成 測(cè)試,系統(tǒng)測(cè)試都要會(huì)。
提前介入測(cè)試。
單元測(cè)試是基于底層代碼的一種測(cè)試
def myself():
print("我是%s,我的職務(wù)是%s"%("匡老師","測(cè)試講師"))
myself()
def add(a,b):
c=a+b
return c
add(1,2)
單元測(cè)試中的實(shí)測(cè)模塊可以理解成單獨(dú)的某個(gè)類(lèi)文件某個(gè)方法或者某個(gè)函數(shù)或者某個(gè)變量的定義與使用。
集成測(cè)試(接口測(cè)試)
半成品
將多類(lèi)文件集成在一塊變成一個(gè)完整的子系統(tǒng)
提前介入測(cè)試工作。
集成測(cè)試階段的介入時(shí)機(jī):前端界面還未出來(lái)時(shí)實(shí)施的測(cè)試工作,后端的接口已經(jīng)測(cè)試通過(guò)能夠達(dá)到提測(cè)標(biāo)題就可以實(shí)施集成測(cè)試。

什么是集成測(cè)試?一個(gè)完整的系統(tǒng)是由多個(gè)子系統(tǒng)組裝而成的一個(gè)龐大的大系統(tǒng)。
一個(gè)電商系統(tǒng):商品管理、訂單管理、權(quán)限管理等相關(guān)子系統(tǒng)組成。
單獨(dú)的一個(gè)系統(tǒng)能夠正常工作,但是將所有的孩子 集成在一塊并不能確保系統(tǒng)能夠穩(wěn)定開(kāi)展工作。
所以為了更好地保障系統(tǒng)的質(zhì)量,實(shí)施單元測(cè)試之后需要將多個(gè)系統(tǒng)進(jìn)行集成,讓所有的系統(tǒng)集成在一塊都能夠正常工作。
將多個(gè)子組裝成一個(gè)大系統(tǒng)的過(guò)程就做集成的過(guò)程,測(cè)試是針對(duì)于集成后的系統(tǒng)進(jìn)行的,集成測(cè)試是基于接口的一種測(cè)試。

接口測(cè)試的特點(diǎn):驗(yàn)證系統(tǒng)的業(yè)務(wù)邏輯結(jié)構(gòu)與實(shí)際業(yè)務(wù)需求是否匹配,接口是基于協(xié)議的。
基于協(xié)議只需要通過(guò)協(xié)議名稱(chēng)、服務(wù)器ip地址、端口號(hào)、路徑、字符編碼、參數(shù)、響應(yīng)--提交信息、返回--服務(wù)器等相關(guān)內(nèi)容 。
帶有參數(shù)的post,帶有參數(shù)可供查詢的是get接口。
至少要會(huì)一款抓包工具,要具備一定的系統(tǒng)分析業(yè)務(wù)的能力。
接口測(cè)試主要測(cè)試系統(tǒng)的業(yè)務(wù)邏輯關(guān)聯(lián)參數(shù)取值的正確性。
一個(gè)接口的接口參數(shù)會(huì)被下一個(gè)模塊接口請(qǐng)求調(diào)用。

接口測(cè)試的工作原理機(jī)制
例如:接口參數(shù)通過(guò)服務(wù)器---傳遞給數(shù)據(jù)庫(kù)服務(wù)器,再響應(yīng)返回給客戶端的過(guò)程----通信的過(guò)程。
計(jì)算機(jī)網(wǎng)絡(luò)---權(quán)限認(rèn)證---加密--RSA ASE等相關(guān)的加密方法。
要學(xué)會(huì)接口測(cè)試需要 具備一定的接口測(cè)試基礎(chǔ),至少會(huì)使用一款接口測(cè)試工具,企業(yè)中常用的接口測(cè)試工具有:postman\jmeter比較流程的工具
jmeter不僅可以用來(lái)做接口測(cè)試還可用來(lái)實(shí)施性能測(cè)試。
遵循軟件測(cè)試的原則:應(yīng)盡量或者遲早地開(kāi)展軟件測(cè)試工作,降低軟件測(cè)試的成本,提升軟件測(cè)試的效率,降低產(chǎn)品發(fā)布的風(fēng)險(xiǎn)。

接口測(cè)試的目的:能夠發(fā)現(xiàn)功能測(cè)試發(fā)現(xiàn)不了的問(wèn)題。
測(cè)試開(kāi)發(fā)崗:不僅要會(huì)測(cè)試還需要會(huì)開(kāi)發(fā)。
開(kāi)發(fā)的產(chǎn)品是幫助測(cè)試部門(mén)來(lái)解決測(cè)試問(wèn)題的。例如:測(cè)試平臺(tái)---用來(lái)管理測(cè)試人員日常工作的過(guò)程輸出情況,用來(lái)幫助測(cè)試人員提升測(cè)試工作效率的。
系統(tǒng)測(cè)試:功能測(cè)試(點(diǎn)點(diǎn)點(diǎn))與性能測(cè)試階段。
冒煙測(cè)試---覆蓋主流程的一種測(cè)試方法。
兼容性測(cè)試:瀏覽器、操作系統(tǒng)、分辨率
移動(dòng)端兼容:兼容網(wǎng)絡(luò)(3G/4G/5G)、手機(jī)品牌與型號(hào)的兼容、信號(hào)、防干擾性等相關(guān)的測(cè)試。
鏈接測(cè)試
前后端聯(lián)調(diào)后發(fā)布到測(cè)試環(huán)境開(kāi)展的一種系統(tǒng)測(cè)試。
系統(tǒng)測(cè)試是將多個(gè)子系統(tǒng)組裝成一個(gè)完成的系統(tǒng),進(jìn)入系統(tǒng)測(cè)試階段所有的前后端功能都要開(kāi)發(fā)完成。
系統(tǒng)測(cè)試階段主要驗(yàn)證需求的功能是否得到滿足,也就是需求能夠滿足用戶的要求。
系統(tǒng)測(cè)試是基于界面的測(cè)試如果測(cè)試接口測(cè)試,用戶在提交數(shù)據(jù)時(shí)可以直接通過(guò)接口與服務(wù)器端產(chǎn)生交互。

如果后端程序沒(méi)有對(duì)接口的功能驗(yàn)證規(guī)則進(jìn)行控制,用戶就可以繞過(guò)前端直接向服務(wù)端提交數(shù)據(jù)。
性能測(cè)試不是找功能bug,一定要保障功能測(cè)試通過(guò)后再開(kāi)展性能測(cè)試,相當(dāng)于性能測(cè)試是用來(lái)測(cè)試系統(tǒng)的服務(wù)器瓶頸。
java代碼的監(jiān)控、mysql代碼的監(jiān)控。
硬件資源的監(jiān)控與分析、系統(tǒng)架構(gòu)的分析。
能夠?yàn)橛脩籼峁┫到y(tǒng)調(diào)優(yōu)方案
自動(dòng)化測(cè)試是功能測(cè)試的一種,主要為了幫助大家提升功能測(cè)試效率而誕生。
會(huì)自動(dòng)化測(cè)試一定要會(huì)使用測(cè)試工具。
一個(gè)完整的產(chǎn)品(衣服)是由很多個(gè)零部件組成,單獨(dú)的一個(gè)小產(chǎn)品是由很多個(gè)零部件組成的半成品,完成的產(chǎn)品是多個(gè)半成品組裝而成品。
一個(gè)完整的產(chǎn)品是由零部件、多個(gè)半成品組裝而成的。
驗(yàn)收測(cè)試:
驗(yàn)證測(cè)試也叫交付測(cè)試,是在系統(tǒng)測(cè)試階段之后實(shí)施的,在生產(chǎn)環(huán)境發(fā)布之前進(jìn)行驗(yàn)收。
驗(yàn)證測(cè)試需要用戶參與驗(yàn)證,驗(yàn)證測(cè)試有相應(yīng)的驗(yàn)收流程與規(guī)范。

驗(yàn)證測(cè)試分類(lèi):
如果開(kāi)發(fā)的軟件是供軟件公司內(nèi)部使用,一般驗(yàn)收測(cè)試由運(yùn)營(yíng)部負(fù)責(zé)人驗(yàn)收。
如果開(kāi)的軟件是交付給客戶公司,需要客戶代表參與驗(yàn)收。
測(cè)試人員的需求驗(yàn)收標(biāo)準(zhǔn)是由產(chǎn)品經(jīng)理驗(yàn)收 。
如果是公司內(nèi)的軟件產(chǎn)品經(jīng)理驗(yàn)收通過(guò)需要企業(yè)運(yùn)營(yíng)人員對(duì)產(chǎn)品經(jīng)理的需求進(jìn)行驗(yàn)收,如果驗(yàn)收通過(guò)則允許發(fā)布生產(chǎn)環(huán)境。

測(cè)試人員不僅僅要負(fù)責(zé)測(cè)試環(huán)境的測(cè)試,還需要負(fù)責(zé)上線環(huán)境的走查測(cè)試。
測(cè)試環(huán)境詳解【QA/UAT/PRE/PRD】
QA環(huán)境指測(cè)試環(huán)境---bug最多
UAT指的是用戶驗(yàn)收測(cè)試環(huán)境(內(nèi)部產(chǎn)品經(jīng)理驗(yàn)收測(cè)試人員成果是否符合需求)--相比較QA環(huán)境bug逐步減少
PRE環(huán)境(灰度環(huán)境)模擬真實(shí)的線上生產(chǎn)環(huán)境--bug消除達(dá)到98%以上
PRD指的是線上生產(chǎn)環(huán)境--不要出現(xiàn)嚴(yán)重級(jí)別高的bug,必須消除,但是允許出現(xiàn)一些低級(jí)別的bug,不影響用戶使用操作的。
大家好,我是Kitty教軟件測(cè)試,更多干貨內(nèi)容敬請(qǐng)期待。