測試分類
成都創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站制作、成都網(wǎng)站制作、閩清網(wǎng)絡(luò)推廣、成都微信小程序、閩清網(wǎng)絡(luò)營銷、閩清企業(yè)策劃、閩清品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);成都創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供閩清建站搭建服務(wù),24小時(shí)服務(wù)熱線:18980820575,官方網(wǎng)址:www.cdcxhl.com
按開發(fā)階段劃分
單元測試又稱模塊測試,針對軟件設(shè)計(jì)中的最小單位——程序模塊,進(jìn)行正確性檢查的測試工作。
集成測試又叫組裝測試,通常在單元測試的基礎(chǔ)上,將所有程序模塊進(jìn)行有序的、遞增測試。重點(diǎn)測試不同模塊的接口部分
指的是將整個(gè)軟件系統(tǒng)看成一個(gè)整體進(jìn)行測試,包括對功能、性能以及軟件所運(yùn)行的軟硬件環(huán)境進(jìn)行測試。
指按照項(xiàng)目任務(wù)書或合同、供需雙方約定的驗(yàn)收依據(jù)文檔進(jìn)行的對整個(gè)系統(tǒng)的測試與評審,決定是否接收或拒收系統(tǒng)
按是否運(yùn)行劃分
是指不實(shí)際運(yùn)行被測軟件,而只是靜態(tài)地檢查程序代碼、界面或文檔中可能存在的錯(cuò)誤過程
是指實(shí)際運(yùn)行被測程序,輸入相應(yīng)的測試數(shù)據(jù),檢查實(shí)際輸出結(jié)果和預(yù)期結(jié)果是否相符的過程。
按是否查看源代碼劃分
指的是把被測的軟件看做一個(gè)黑盒子,不關(guān)心盒子里面的結(jié)構(gòu)是什么樣子,只關(guān)心軟件的輸入數(shù)據(jù)和輸出數(shù)據(jù)。
指的是把盒子打開,去研究里面的源代碼和程序結(jié)構(gòu)。
其他
是指軟件被修改后重新進(jìn)行的測試,重復(fù)執(zhí)行上一個(gè)版本測試時(shí)的用例,是為了保證對軟件所做的修改沒有引入新的錯(cuò)誤而重復(fù)進(jìn)行的測試。
是指在對一個(gè)新版本進(jìn)行系統(tǒng)大規(guī)模的測試之前,先驗(yàn)證一下軟件的基本功能是否實(shí)現(xiàn),是否具備可測性。
是指測試中所有的輸入數(shù)據(jù)都是隨機(jī)生成的,其目的是模擬用戶的真實(shí)操作,并發(fā)現(xiàn)一些邊緣性的錯(cuò)誤。
一直以來都是后臺(tái)寫單元測試,這周初次使用前臺(tái)單元測試,出錯(cuò)是必然的
問題使用自己寫的組件或者管道是報(bào)錯(cuò)
需要在前臺(tái)單元測試spec.ts
文件中加入自己寫的組件或管道,例如:
使用框架中自帶的組件
需要在前臺(tái)單元測試spec.ts
文件中加入報(bào)錯(cuò)信息提示的組件,例如:
[object ErrorEvent] thrown
[對象 錯(cuò)誤事件] 被拋出
這個(gè)錯(cuò)誤是遇到次數(shù)最多的,當(dāng)時(shí)出現(xiàn)這個(gè)錯(cuò)誤時(shí)和張喜碩組長研究查資料搞了大半宿也沒解決,最后還是在潘老師的幫助下解決的,得知ng test
時(shí)控制臺(tái)報(bào)錯(cuò)的哪個(gè)文件,不一定是這個(gè)文件出錯(cuò),解決辦法如下:
打開單元測試時(shí)自動(dòng)彈出來瀏覽器的控制臺(tái)
控制臺(tái)中,由于http發(fā)起請求時(shí),必然發(fā)生錯(cuò)誤,所以有很多個(gè)錯(cuò)誤,但是導(dǎo)致單元測試不通過的,只有那些發(fā)生了異常,我們沒有傳入error的
找到Uncaught
,點(diǎn)開HttpErrorResponse
看一下對應(yīng)service
中的那個(gè)服務(wù)
在對應(yīng)的服務(wù)中找到,找到方法(在方法名上右鍵Find Usages
)看誰調(diào)用了我。
在訂閱的時(shí)候,要加入error
異常錯(cuò)誤
加上之后問題解決,單元測試通過。
總結(jié)
單元測試從長期來看,可以提高代碼質(zhì)量,減少維護(hù)成本,降低重構(gòu)難度。但是從短期來看,加大了工作量,對于進(jìn)度緊張的項(xiàng)目中的開發(fā)人員來說,可能會(huì)成為不少的負(fù)擔(dān)。
但是我這里有個(gè)疑問:
angular
單元測試都是用命令行自動(dòng)生成的,測試和不測試有什么區(qū)別?感覺加了測試反而更麻煩