良好的測試要素
1.1 什么樣的測試算是完美
a. 它會檢測出一個系統(tǒng)中的所有缺陷
b. 它永遠(yuǎn)不會將不是缺陷的情況判斷為缺陷
c. 它能讓我們完全確信它完成了a和b
d. 針對我們的需求顾腊,它可以足夠迅速和廉價地實現(xiàn)a,b和c
以上就是完美測試的基本特點粤铭。
但是我們知道** 測試對多只是采樣 **, 測試人員是無法設(shè)計出既滿足a又滿足d的完美測試杂靶。所以我們期望只能期望自己的測試時“良好”的測試梆惯。
1.2 良好的測試
測試是針對具體問題或者系統(tǒng)的,良好的測試意味著能正確反映出目標(biāo)的目前狀態(tài)吗垮。換句書上的說法也就是垛吗,“良好”并不是屬于某個測試的屬性,而是只是用來描述某個測試與某個實現(xiàn)之間的特定關(guān)系的屬性烁登。
1.3 評估測試是否良好
- 開發(fā)人員可以在審閱代碼時怯屉,發(fā)現(xiàn)缺陷,可以先不修復(fù)饵沧,也不告訴測試人員锨络,看測試人員測出缺陷數(shù)目,統(tǒng)計估算系統(tǒng)內(nèi)未發(fā)現(xiàn)的缺陷數(shù)量
- 測試是否在名義上能夠提供測試需要的信息捷泞?
- 是否進(jìn)行了文檔記錄足删?是否親自觀察了測試過程?
- 它是否是真實的锁右?不要有意或無意的捏造測試文檔
- 你是否理解它?
- 它是否至少覆蓋了那些最重要的部分讶泰?
- 它是否確實完成了咏瑟?
- 不同類型的測試活動之間是否有不一致的地方?
- 測試報告中是否有傾向性或過于簡化或表面化痪署?
開發(fā)與測試人員的心理
涉及第六第七章码泞,信息免疫與防衛(wèi)心理
當(dāng)我們在生存規(guī)則受到威脅時會感到害怕,這時我們可能會本能的采取一些防衛(wèi)措施
如開發(fā)人員討厭測試可能是因為他擔(dān)心測試出現(xiàn)大量缺陷從而影響經(jīng)理對他開發(fā)水平的懷疑狼犯。這時他可能會采取一些防衛(wèi)措施來化解這一窘境余寥。
- 壓抑:用戶不會這么做的,那不是缺陷
- 合理化:A: 這兩個注銷操作的流程不同! B: 這是一個特性悯森,沒必要統(tǒng)一所有 注銷的流程
- 投射:A:響應(yīng)時間太長了宋舷,一直黑屏,幾分鐘了程序還卡在那里瓢姻。B:這個操作需要時間祝蝠,用戶應(yīng)該慶幸處理這么大的數(shù)據(jù),系統(tǒng)沒有崩潰。
- 轉(zhuǎn)移:你太挑剔了绎狭;如果你不復(fù)現(xiàn)該問題细溅,我就沒法做任何事;這是他們的代碼儡嘶;這不是我的代碼
- 過度補(bǔ)償
- 強(qiáng)迫