探索性測(cè)試 VS 精益測(cè)試

7月底腻惠,客戶方的十幾位產(chǎn)品人來(lái)ThoughtWorks進(jìn)行經(jīng)驗(yàn)交流集灌,公司準(zhǔn)備了好幾個(gè)議題欣喧,我有幸負(fù)責(zé)《ThoughtWorks測(cè)試方法論與實(shí)踐的交流》唆阿。在方法論部分,我著重分享了“探索性測(cè)試”和“精益測(cè)試”闲询;在實(shí)踐部分扭弧,我分享了在敏捷和DevOps開發(fā)模式下該如何測(cè)試鸽捻。

這次的分享出乎意料地成功泽腮,過程中引發(fā)了很多有趣的討論诊赊,會(huì)議持續(xù)了1.5小時(shí)豪筝,大家仍意猶未盡。

不料团搞,前兩天多艇,客戶又邀請(qǐng)我們?cè)僮鲆淮尉€上交流峻黍,欲將以上內(nèi)容分享給公司更多的同事姆涩。于是骨饿,我就“探索性測(cè)試”和“精益測(cè)試”兩個(gè)方法論的部分寫一寫宏赘,來(lái)進(jìn)一步推敲其中的細(xì)節(jié),希望能給第二次的分享帶來(lái)更多不一樣的體驗(yàn)闷游。


01?探索性測(cè)試

我于2019年12月22日發(fā)表了一篇名為《“探索性測(cè)試”在敏捷項(xiàng)目中的運(yùn)用》的公眾號(hào)推文脐往。后來(lái)钙勃,這篇文章有幸被“清華大學(xué)出版社”、“水木IT社區(qū)”希太、“DevOps”誊辉、及“ThoughtWorks洞見”公眾號(hào)申請(qǐng)轉(zhuǎn)載堕澄。可當(dāng)我再次細(xì)讀文章時(shí)拍屑,卻發(fā)現(xiàn)部分例證其實(shí)可以更精準(zhǔn)僵驰,無(wú)奈公眾號(hào)推文無(wú)法修改蒜茴,我只好借這篇文章重新闡述粉私。不過本文只從部分視角入手诺核,更多內(nèi)容猪瞬,仍建議閱讀上一篇文章陈瘦。

如何理解探索性測(cè)試

舉個(gè)例子痊项,為了7月底的這次經(jīng)驗(yàn)交流會(huì)酥诽,ThoughtWorks計(jì)劃專門為參會(huì)人員定制一款馬克杯肮帐。供應(yīng)商設(shè)計(jì)并研發(fā)好了樣品训枢,提供給我們驗(yàn)收恒界。

傳統(tǒng)測(cè)試會(huì)如何驗(yàn)收呢十酣?

首先,閱讀產(chǎn)品需求規(guī)格說明工育,理解需求翅娶。

材質(zhì):陶瓷

容量:250ml

外觀:(外)綠色釉面竭沫、(里)米色釉面蜕提、米色Logo谎势、標(biāo)注容量

功能:可盛白開水脏榆、茶须喂、咖啡趁蕊、牛奶等一般熱飲

然后掷伙,根據(jù)需求規(guī)格設(shè)計(jì)測(cè)試用例任柜。我們運(yùn)用“等價(jià)類”和“邊界值”測(cè)試方法設(shè)計(jì)了三組測(cè)試用例宙地,然后用儀器檢測(cè)材質(zhì)绸栅;用眼睛觀察UI粹胯;用實(shí)際裝水风纠、咖啡况鸣、茶、牛奶的過程來(lái)驗(yàn)證功能竹观。最后镐捧,逐一執(zhí)行測(cè)試用例,我們發(fā)現(xiàn)臭增,有一條UI的用例測(cè)試不通過懂酱。

對(duì)于這個(gè)例子,我們?nèi)绾芜\(yùn)用探索性測(cè)試驗(yàn)收呢列牺?

和傳統(tǒng)測(cè)試一樣,首先需要根據(jù)需求設(shè)計(jì)測(cè)試拗窃、然后逐一執(zhí)行瞎领。然而,探索性測(cè)試到這里并沒有結(jié)束随夸。

在測(cè)試執(zhí)行過程中九默,我們有了新的發(fā)現(xiàn),進(jìn)而引發(fā)出一些思考:

現(xiàn)象:盛完茶水宾毒,杯子里好多茶漬

思考:能不能刷干凈驼修?

與此同時(shí),我們忽然想到一些特殊的場(chǎng)景:

上班的時(shí)候伍俘,我常常要端著杯子輾轉(zhuǎn)于各個(gè)會(huì)議室邪锌,會(huì)一開就是一個(gè)多小時(shí)。250ml容量夠不夠癌瘾?沒有蓋子觅丰,水會(huì)不會(huì)容易撒出來(lái)?

這些過程中想到的點(diǎn)都還沒有得到驗(yàn)證妨退,因此需要將其添加到測(cè)試用例中妇萄。與傳統(tǒng)測(cè)試不同的是,設(shè)計(jì)用例的時(shí)候咬荷,我們并不一定清楚期待結(jié)果冠句,而是要根據(jù)實(shí)際發(fā)生的結(jié)果去判斷能否接受。比如幸乒,盛完茶水懦底,杯子里好多茶漬,可是稍微一刷便煥然一新罕扎,那么就是可接受的結(jié)果聚唐。而如果丐重,我使勁了渾身解數(shù),茶漬依然紋絲不動(dòng)杆查,那這個(gè)馬克杯只能當(dāng)做一次性的了扮惦,著實(shí)可惜、不可接受亲桦。而對(duì)于第二個(gè)特殊場(chǎng)景崖蜜,250ml容量的確不夠,沒有蓋子客峭,水也的確會(huì)容易灑出來(lái)豫领。可它們真的是問題嗎桃笙?針對(duì)用戶的特殊需求氏堤,換個(gè)容量大一點(diǎn)兒的、帶蓋子的杯子搏明,或許才是解決問題的最佳選擇鼠锈。

相比之下,傳統(tǒng)測(cè)試的過程是線性發(fā)生的星著,“先設(shè)計(jì)购笆、再測(cè)試”,很多公司甚至要求在設(shè)計(jì)用例的時(shí)候就達(dá)到100%覆蓋虚循。而探索性測(cè)試是環(huán)狀的同欠,主張學(xué)習(xí),強(qiáng)調(diào)同時(shí)展開測(cè)試設(shè)計(jì)横缔、執(zhí)行铺遂、并從結(jié)果中獲得反饋,從而持續(xù)優(yōu)化測(cè)試茎刚。

傳統(tǒng)測(cè)試幫助我們交付滿足要求的產(chǎn)品襟锐;而探索性測(cè)試則是為了交付更高質(zhì)量的產(chǎn)品。

運(yùn)用“漫游地圖模型”梳理測(cè)試策略

《探索性測(cè)試實(shí)踐之路》一書提到一種“漫游地圖模型”膛锭,它將測(cè)試比擬為游客在城市中漫游粮坞,將其分為商業(yè)區(qū)、歷史區(qū)初狰、旅游區(qū)莫杈、破舊區(qū)、娛樂區(qū)奢入、及旅館區(qū)筝闹。

(1)商業(yè)區(qū):人們?cè)谏虡I(yè)區(qū)完成一天的工作

(2)歷史區(qū):很多城市都有歷史古跡,很多游客往往為了追隨歷史古跡而來(lái)

(3)旅游區(qū):旅游區(qū)大部分只有游客才去,而當(dāng)?shù)厝藭?huì)盡量避開這些擁堵的地方

(4)破舊區(qū):破舊區(qū)是一個(gè)城市最不受歡迎的地方关顷,可能存在違法亂紀(jì)的現(xiàn)象

(5)娛樂區(qū):游客經(jīng)歷了景點(diǎn)和名勝古跡的游覽之后肩杈,需要在娛樂區(qū)休閑和放松一下,從而使假期變得張弛有度

(6)旅館區(qū):游客經(jīng)過了繁忙的旅程之后解寝,需要在旅館區(qū)休息,恢復(fù)體力

“漫游地圖模型”幫助測(cè)試人員規(guī)劃和分解被測(cè)產(chǎn)品艘儒、制定測(cè)試策略聋伦。

首先,在白紙上畫出商業(yè)區(qū)界睁、歷史區(qū)觉增、旅游區(qū)、破舊區(qū)翻斟、娛樂區(qū)逾礁、及旅館區(qū),代表軟件系統(tǒng)的6個(gè)區(qū)域

接著访惜,整理出軟件的功能嘹履,將每個(gè)功能寫在一張卡片上

最后,將功能卡片貼到對(duì)應(yīng)的區(qū)域

產(chǎn)品分解之后债热,究竟該如何測(cè)試呢砾嫉?

(1)商業(yè)區(qū):用戶花錢買軟件就是因?yàn)檐浖奶匦允沟盟麄兊臉I(yè)務(wù)得以完成。商業(yè)區(qū)測(cè)試類型著重于測(cè)試軟件的主要特性窒篱,因此焕刮,需要頻繁地進(jìn)行回歸測(cè)試,以持續(xù)保證這些主要特性的可用性墙杯。由于具有很高的重復(fù)性配并,“商業(yè)區(qū)”的測(cè)試將是自動(dòng)化測(cè)試關(guān)注的重點(diǎn)

(1)旅游區(qū):對(duì)于軟件,有些特性對(duì)新用戶更有吸引力高镐。這一點(diǎn)也涉及到部分用戶權(quán)限的測(cè)試

(2)歷史區(qū):軟件也一樣具有前版本的歷史遺留代碼溉旋,這個(gè)區(qū)域的測(cè)試目的就是測(cè)試遺留代碼和遺留缺陷。這一點(diǎn)在遺留系統(tǒng)改造項(xiàng)目中體現(xiàn)的尤為明顯避消〉吞玻”新開發(fā)特性不影響原有特性”將成為測(cè)試重點(diǎn)

(3)旅館區(qū):當(dāng)軟件“休息”時(shí),它實(shí)際上還是非常忙碌的岩喷。旅館區(qū)模型關(guān)注的是一些輔助功能恕沫,比如軟件后臺(tái)運(yùn)行等

(4)娛樂區(qū):對(duì)于軟件,比如一個(gè)購(gòu)物網(wǎng)站纱意,商業(yè)區(qū)是搜索商品婶溯、加入購(gòu)物車、生成訂單、付款等迄委,而其娛樂區(qū)就是指漂亮美觀的UI褐筛、友好的用戶界面等。這就需要關(guān)注到用戶體驗(yàn)和兼容性測(cè)試

(5)破舊區(qū):不同于旅游叙身,軟件的破舊區(qū)可能存在嚴(yán)重的缺陷渔扎、安全及性能問題。這部分可能是軟件的重災(zāi)區(qū)信轿,需要關(guān)注異常測(cè)試晃痴、性能測(cè)試和安全測(cè)試

運(yùn)用探索性測(cè)試指導(dǎo)自動(dòng)化測(cè)試

自動(dòng)化測(cè)試,是指將人為驅(qū)動(dòng)的測(cè)試行為轉(zhuǎn)化成機(jī)器财忽、工具或者代碼執(zhí)行的一種測(cè)試方法倘核。

我們通常將需求明確的、業(yè)務(wù)穩(wěn)定的即彪、需要重復(fù)回歸測(cè)試的部分用自動(dòng)化測(cè)試來(lái)實(shí)現(xiàn);而將需求不明確隶校、變動(dòng)頻繁的遭庶、無(wú)需重復(fù)測(cè)試的峦睡、或者需要日志等特殊形式驗(yàn)證結(jié)果的部分榨了,配合探索性測(cè)試思路龙屉,通過手工測(cè)試來(lái)完成转捕。

但自動(dòng)化測(cè)試與手工測(cè)試并不是相互割裂的五芝,而存在一個(gè)相互轉(zhuǎn)化的過程枢步。仍然以上面定制的馬克杯為例:

首先矾瑰,需求規(guī)格中明確提到的點(diǎn)往往是軟件的核心功能殴穴,需求明確推正、業(yè)務(wù)穩(wěn)定再沧、也需要通過反復(fù)測(cè)試來(lái)保證這些功能的可用性炒瘸,因此是自動(dòng)化測(cè)試的首選

其次顷扩,如上面講到的扎阶,在測(cè)試過程中东臀,我們有了新的發(fā)現(xiàn)惰赋,或者想到一些特殊場(chǎng)景。在最開始拒炎,我們并不清楚這些新學(xué)習(xí)到的點(diǎn)的實(shí)際結(jié)果會(huì)是怎么樣的枝冀,因此需要手工測(cè)試果漾,測(cè)試的步驟和期待結(jié)果都需要探索

接著吨凑,在手工執(zhí)行的過程中鸵钝,我們最終證實(shí)了一些用例恩商。比如,盛完茶的杯子粟矿,確定是能被刷干凈的。那么掏秩,我們就可以直接將這個(gè)已經(jīng)確定的點(diǎn)添加到自動(dòng)化測(cè)試腳本中

最后,有一些思考被證明的確是問題杆煞,但我們并不需要去解決它决乎,也無(wú)需再去關(guān)注构诚,直接舍棄就好了送膳。


02?精益測(cè)試

“精益測(cè)試”是ThoughtWorks 資深 QA 咨詢師林冰玉提出的概念,她曾專門寫過一篇博客《精益測(cè)試》碌补,也講過直播課程。

而我袜啃,不僅是知識(shí)的搬運(yùn)工,更希望闡述一些自己對(duì)于“精益測(cè)試”的理解。

如何理解精益測(cè)試

“精益測(cè)試”的理念是將“精益生產(chǎn)”與“測(cè)試”相結(jié)合。

精益生產(chǎn)來(lái)源于豐田的生產(chǎn)方式,其目標(biāo)是控制庫(kù)存量古劲,減少生產(chǎn)過程中的浪費(fèi);旨在按需生產(chǎn)闷堡、用最少工作,創(chuàng)造價(jià)值管钳。

測(cè)試要做到精益,就是要減少測(cè)試中的浪費(fèi)栽烂,不能一味的追求測(cè)試覆蓋率,大而全的測(cè)試覆蓋本身就是一種浪費(fèi)。因此,精益測(cè)試并不是一種具體的測(cè)試方法聊闯,而是一種思維,其價(jià)值主要是為了幫助團(tuán)隊(duì)制定合適的測(cè)試策略,讓測(cè)試更有效。

對(duì)于“精益測(cè)試”的定義,我們應(yīng)該這樣理解:

對(duì)能體現(xiàn)業(yè)務(wù)價(jià)值的點(diǎn),做到有效的測(cè)試覆蓋粥烁,減少浪費(fèi)芥永,從而以盡量少的成本交付高質(zhì)量的軟件奇瘦。

測(cè)試如何才能做到精益醇坝,如何才能避免浪費(fèi)呢砸琅?

這就不得不提到精益測(cè)試的核心原則,我們將其總結(jié)為TAT:適時(shí)(Time)嘁傀、適量(Amount)、精準(zhǔn)(Target)。

適時(shí)(Time):敏捷測(cè)試要求測(cè)試全程參與瓤狐,讓測(cè)試活動(dòng)發(fā)生在敏捷軟件開發(fā)生命周期的每個(gè)環(huán)節(jié)荧缘,而讓每種類型的測(cè)試發(fā)生在它最該發(fā)生的時(shí)刻绸罗。比如靡羡,開發(fā)人員在開始實(shí)現(xiàn)一個(gè)故事卡之前趟薄,召集BA和QA一起做Kick Off羡铲,以幫助各個(gè)角色對(duì)需求達(dá)成一致的理解蜂桶,避免在開始開發(fā)前就對(duì)需求產(chǎn)生誤解。而在完成一張需求卡的開發(fā)之后也切、提交測(cè)試之前扑媚,一起做Desk check,按照故事卡上的驗(yàn)收標(biāo)準(zhǔn)逐條演示雷恃,這樣就能避免問題要等到QA人員正式開始測(cè)試之后才被發(fā)現(xiàn)疆股。

適量(Amount):不再盲目地追求100%測(cè)試覆蓋,需要權(quán)衡利弊倒槐,把時(shí)間花在真正有價(jià)值的事情上旬痹,這也是精益的體現(xiàn)。我見過一些公司,將測(cè)試覆蓋率作為QA人員的KPI唱凯,要求達(dá)到100%覆蓋羡忘。最終花費(fèi)了太多精力去測(cè)試一些并不那么重要的模塊、或者花了更多精力在一些并不重要的自動(dòng)化測(cè)試腳本的維護(hù)上磕昼。這必然造成極大的浪費(fèi)卷雕。

精準(zhǔn)(Target):精準(zhǔn)測(cè)試通常是指根據(jù)代碼改動(dòng)所影響到的范圍去針對(duì)性的測(cè)試。比如票从,當(dāng)開發(fā)修復(fù)一個(gè)Bug之后漫雕,我們并不需要將整個(gè)系統(tǒng)重新測(cè)試一遍。正確的做法是峰鄙,精準(zhǔn)地分析出Bug本身浸间、及Bug的影響范圍,然后針對(duì)性地測(cè)試吟榴。其中魁蒜,Bug本身的回歸測(cè)試就是High level的測(cè)試,而影響范圍則是Medium的測(cè)試吩翻。

如何做到精益測(cè)試

林冰玉提到了兩個(gè)測(cè)試指導(dǎo)框架:測(cè)試四象限和測(cè)試分層兜看。在這里,我想重點(diǎn)闡述自己對(duì)測(cè)試分層的理解狭瞎。想要了解測(cè)試四象限细移,請(qǐng)閱讀林冰玉的原文

要理解測(cè)試分層熊锭,首先要理解軟件分層弧轧。阮一峰在他的博客中介紹過O’Reilly 出版過一本免費(fèi)的小冊(cè)子《Software Architecture Patterns》,里面介紹了軟件分層架構(gòu)碗殷。

軟件分層架構(gòu)將軟件分成若干個(gè)水平層精绎,每一層都有清晰的分工,不需要知道其他層的細(xì)節(jié)锌妻。層與層之間通過接口通信代乃。

(1)表現(xiàn)層(Presentation Layer):用戶界面,負(fù)責(zé)視覺和用戶互動(dòng)

(2)業(yè)務(wù)層(Business Layer):實(shí)現(xiàn)業(yè)務(wù)邏輯

(3)持久層(Persistence Layer):提供數(shù)據(jù)从祝,SQL 語(yǔ)句就放在這一層

(4)數(shù)據(jù)庫(kù)(Database Layer) :保存數(shù)據(jù)

用戶的請(qǐng)求依次通過這四層的處理襟己,不能跳過其中任何一層引谜。

軟件分層架構(gòu)為軟件開發(fā)帶來(lái)一定的好處牍陌,比如,不同技能的程序員可以獨(dú)立分工员咽,負(fù)責(zé)不同層的開發(fā)毒涧,這就是為什么我們會(huì)有前端開發(fā)和后端開發(fā)等多種開發(fā)角色;開發(fā)順序也不受限制贝室、只需要在各個(gè)層完成獨(dú)立開發(fā)之后進(jìn)行集成契讲。

既然每一層可以獨(dú)立開發(fā)仿吞,就必然能夠獨(dú)立測(cè)試。其他層的接口如果已經(jīng)完成捡偏,可以直接與其集成進(jìn)行測(cè)試唤冈;如果尚未完成,也可以通過模擬來(lái)解決银伟,這就是測(cè)試分層你虹。

與軟件分層不同的是,在分析測(cè)試時(shí)彤避,我們將持久層和數(shù)據(jù)庫(kù)層統(tǒng)一稱為“數(shù)據(jù)層”傅物。

(1)表現(xiàn)層測(cè)試:關(guān)注用戶界面的互動(dòng)和視覺,我們將其稱為“UI測(cè)試”琉预。

UI測(cè)試常常需要一些工具來(lái)輔助測(cè)試董饰,比如,使用Galen進(jìn)行響應(yīng)式測(cè)試圆米,驗(yàn)證頁(yè)面是否能夠根據(jù)瀏覽器窗口或屏幕大小等作出響應(yīng)卒暂;使用一些圖片或像素對(duì)比工具來(lái)測(cè)試UI是否與設(shè)計(jì)一致

UI測(cè)試還需要及時(shí)獲得用戶的反饋,我們可以通過給用戶Showcase等形式榨咐,盡早地獲取用戶對(duì)于交互習(xí)慣的反饋

(2)業(yè)務(wù)層測(cè)試:關(guān)注業(yè)務(wù)邏輯的正常和異常情況介却。

通過接口測(cè)試來(lái)驗(yàn)證業(yè)務(wù)邏輯。接口通常分為功能性接口和數(shù)據(jù)性接口块茁,功能性接口主要為了實(shí)現(xiàn)某個(gè)業(yè)務(wù)功能齿坷,接口背后都是獨(dú)立的業(yè)務(wù)邏輯塊,通常我們需要畫出模塊業(yè)務(wù)流程圖数焊,然后通過給接口配置多組不同的測(cè)試數(shù)據(jù)來(lái)覆蓋流程圖中的不同路徑永淌;而數(shù)據(jù)接口更多地是為了數(shù)據(jù)傳輸,測(cè)試需要關(guān)注數(shù)據(jù)傳輸中的正確性佩耳、完整性遂蛀、及加密等特殊場(chǎng)景

由于接口測(cè)試需要在整個(gè)業(yè)務(wù)邏輯完成之后才能進(jìn)行,因此干厚,建議提前引入“單元測(cè)試”李滴,即從一個(gè)方法、一個(gè)函數(shù)等程序中的最小可測(cè)單元開始測(cè)試

(3)數(shù)據(jù)層:數(shù)據(jù)層往往不需要單獨(dú)測(cè)試蛮瞄,而是與接口集成在一起測(cè)試所坯。舉個(gè)例子:系統(tǒng)有兩個(gè)接口,A用來(lái)創(chuàng)建表單挂捅,表單包含4個(gè)字段信息芹助。B用來(lái)查看表單,其中1個(gè)字段加密顯示。而在數(shù)據(jù)庫(kù)中状土,除了表單的4個(gè)字段之外无蜂,還有2個(gè)新字段作為業(yè)務(wù)邏輯的過程值。因此蒙谓,測(cè)試時(shí)斥季,首先,我們需要測(cè)試A接口的創(chuàng)建邏輯累驮,當(dāng)接口返回成功時(shí)泻肯,去數(shù)據(jù)庫(kù)查看存儲(chǔ)的4個(gè)數(shù)據(jù)是否與接口入?yún)⒁恢拢虚g值的2個(gè)字段是否與預(yù)期一致慰照。其次灶挟,測(cè)試B接口的查看邏輯,接口返回?cái)?shù)據(jù)時(shí)毒租,與數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行比較稚铣,以驗(yàn)證數(shù)據(jù)的邏輯處理效果。

除了對(duì)每一層單獨(dú)進(jìn)行測(cè)試墅垮,我們還需要測(cè)試各層之間的集成惕医,這被稱為端到端測(cè)試。

(1)基于UI的端到測(cè)試:模擬用戶在頁(yè)面進(jìn)行一次操作引發(fā)的請(qǐng)求算色,驗(yàn)證請(qǐng)求從表現(xiàn)層最終到達(dá)數(shù)據(jù)層的過程中抬伺,業(yè)務(wù)邏輯、數(shù)據(jù)傳輸與存儲(chǔ)的正確性灾梦。它更像一種前后端之間的集成測(cè)試峡钓。

(2)基于業(yè)務(wù)流程的端到端:測(cè)試用戶從某個(gè)業(yè)務(wù)起點(diǎn)到終點(diǎn)所引發(fā)的一系列請(qǐng)求,從表現(xiàn)層到數(shù)據(jù)層的處理過程邏輯及數(shù)據(jù)轉(zhuǎn)換

那么若河,在使用測(cè)試分層框架指導(dǎo)測(cè)試時(shí)能岩,如何才能做到適時(shí)、適量萧福、精準(zhǔn)呢拉鹃?

適時(shí):就是指我們?cè)谕瓿擅恳粚拥拇a開發(fā)之后,立即開始這一層的測(cè)試鲫忍,而在完成每一層的集成之后膏燕,立即開始集成測(cè)試或端到端測(cè)試

適量:從業(yè)務(wù)邏輯層到表現(xiàn)層,隨著測(cè)試的依賴越來(lái)越多悟民、邏輯和數(shù)據(jù)越來(lái)越復(fù)雜坝辫,測(cè)試的成本會(huì)逐漸增高,測(cè)試進(jìn)度也相對(duì)滯后逾雄,因此要盡可能對(duì)較細(xì)顆粒度的測(cè)試進(jìn)行更高程度的覆蓋阀溶,而不是每一層都追求100%覆蓋

精準(zhǔn):越往底層的測(cè)試越接近代碼,測(cè)試成本更低鸦泳、執(zhí)行速度更快银锻、定位問題也更準(zhǔn)確,但是不能突顯出完整的價(jià)值鏈做鹰;越往上層的測(cè)試越接近業(yè)務(wù)击纬,更能反應(yīng)業(yè)務(wù)價(jià)值,但有著不夠穩(wěn)定钾麸、執(zhí)行速度慢更振、問題定位難等不足。因此饭尝,要明確每一層的特點(diǎn)和測(cè)試目標(biāo)肯腕,避免各層之間對(duì)相同的點(diǎn)進(jìn)行重復(fù)測(cè)試,產(chǎn)生冗余钥平。比如实撒,一個(gè)用來(lái)做除法的功能,我們?cè)诮涌跍y(cè)試中進(jìn)行了分母為0的異常測(cè)試涉瘾,就沒有必要在基于UI的端到端測(cè)試中重新測(cè)試一遍

雖然理想情況下知态,我們希望分層測(cè)試的覆蓋情況呈金字塔結(jié)構(gòu),但隨著技術(shù)架構(gòu)立叛、系統(tǒng)特點(diǎn)负敏、質(zhì)量要求、團(tuán)隊(duì)技能水平等因素的不同秘蛇,每種測(cè)試的比例也不盡相同其做,它很有可能呈現(xiàn)出蜂巢等其它結(jié)構(gòu)。因此赁还,需要根據(jù)項(xiàng)目具體情況庶柿,來(lái)確定每層測(cè)試的比例。


03?總結(jié)

探索性測(cè)試和精益測(cè)試都可以被認(rèn)為是一種測(cè)試思想秽浇,而并非某一種具體的測(cè)試項(xiàng)目或測(cè)試技術(shù)浮庐。既然是思想,就完全可以被應(yīng)用于編寫測(cè)試策略柬焕、設(shè)計(jì)自動(dòng)化測(cè)試审残、或者進(jìn)行功能測(cè)試、性能測(cè)試斑举、兼容性測(cè)試等某一種具體的測(cè)試項(xiàng)中搅轿。

探索性測(cè)試幫助測(cè)試人員發(fā)散和拓展思路,發(fā)現(xiàn)更多關(guān)于產(chǎn)品的質(zhì)量問題富玷。而精益測(cè)試恰好幫助其進(jìn)行有效收斂璧坟,將測(cè)試做到適時(shí)既穆、適量和精準(zhǔn),讓測(cè)試做到恰到好處從而減少浪費(fèi)雀鹃。兩者相輔相成幻工、起到良好的杠桿作用。

在我看來(lái)黎茎,對(duì)于To B類型的產(chǎn)品囊颅,系統(tǒng)用戶只有幾個(gè)人,他們更關(guān)心的是產(chǎn)品能不能幫助他完成業(yè)務(wù)傅瞻、從而來(lái)帶利潤(rùn)踢代。他們對(duì)產(chǎn)品質(zhì)量的容忍性高、對(duì)系統(tǒng)易用性的訴求也不夠強(qiáng)烈嗅骄。因此胳挎,運(yùn)用精益測(cè)試,有助于更高效地交付產(chǎn)品溺森。

而對(duì)于To C類的產(chǎn)品串远,用戶往往千奇百怪,訴求也天馬行空儿惫,產(chǎn)品中任何一個(gè)不太好用的點(diǎn)都可能讓其失去一個(gè)用戶澡罚。因此,To C類產(chǎn)品就是探索性測(cè)試大展身手的時(shí)候了肾请。

對(duì)于探索性測(cè)試和精益測(cè)試留搔,你怎么看呢?歡迎留言給我铛铁!


延伸閱讀:

“探索性測(cè)試”在敏捷項(xiàng)目中的運(yùn)用

精益測(cè)試

《ThoughWorks敏捷測(cè)試第三講:精益測(cè)試》(https://app.ma.scrmtech.com/meetings-api/sapIndex/SapSourceData?pf_uid=7019_1254&sid=16238&source=2&pf_type=3&channel_id=779&channel_name=insights&tag_id=7066157a5b2dd0c0&appid=wx4bd00f95dd7c7ca1)

微信掃描以下二維碼隔显,關(guān)注七姑娘日記

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市饵逐,隨后出現(xiàn)的幾起案子括眠,更是在濱河造成了極大的恐慌,老刑警劉巖倍权,帶你破解...
    沈念sama閱讀 218,284評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件掷豺,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡薄声,警方通過查閱死者的電腦和手機(jī)当船,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,115評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)默辨,“玉大人德频,你說我怎么就攤上這事∷跣遥” “怎么了壹置?”我有些...
    開封第一講書人閱讀 164,614評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵竞思,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我钞护,道長(zhǎng)盖喷,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,671評(píng)論 1 293
  • 正文 為了忘掉前任患亿,我火速辦了婚禮,結(jié)果婚禮上押逼,老公的妹妹穿的比我還像新娘步藕。我一直安慰自己充包,他們只是感情好谭贪,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,699評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著中捆,像睡著了一般漂彤。 火紅的嫁衣襯著肌膚如雪雾消。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,562評(píng)論 1 305
  • 那天挫望,我揣著相機(jī)與錄音立润,去河邊找鬼。 笑死媳板,一個(gè)胖子當(dāng)著我的面吹牛桑腮,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播蛉幸,決...
    沈念sama閱讀 40,309評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼破讨,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了奕纫?” 一聲冷哼從身側(cè)響起提陶,我...
    開封第一講書人閱讀 39,223評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎匹层,沒想到半個(gè)月后隙笆,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,668評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡升筏,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,859評(píng)論 3 336
  • 正文 我和宋清朗相戀三年仲器,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片仰冠。...
    茶點(diǎn)故事閱讀 39,981評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡乏冀,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出洋只,到底是詐尸還是另有隱情辆沦,我是刑警寧澤昼捍,帶...
    沈念sama閱讀 35,705評(píng)論 5 347
  • 正文 年R本政府宣布,位于F島的核電站肢扯,受9級(jí)特大地震影響妒茬,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜蔚晨,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,310評(píng)論 3 330
  • 文/蒙蒙 一乍钻、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧铭腕,春花似錦银择、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,904評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至被盈,卻和暖如春析孽,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背只怎。 一陣腳步聲響...
    開封第一講書人閱讀 33,023評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工袜瞬, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人身堡。 一個(gè)月前我還...
    沈念sama閱讀 48,146評(píng)論 3 370
  • 正文 我出身青樓吞滞,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親盾沫。 傳聞我的和親對(duì)象是個(gè)殘疾皇子裁赠,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,933評(píng)論 2 355