欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

程序員自己寫測(cè)試,還要測(cè)試人員做什么?

2021-02-21    分類: 網(wǎng)站建設(shè)

在向開(kāi)發(fā)人員介紹單元測(cè)試或TDD等工程實(shí)踐時(shí),往往可以聽(tīng)到這樣的疑問(wèn)。比如:

自己寫的程序,自己無(wú)法從另一個(gè)角度測(cè)出問(wèn)題。

寫bug的時(shí)間都不夠了,哪有時(shí)間來(lái)寫測(cè)試?

開(kāi)發(fā)來(lái)寫測(cè)試了,測(cè)試干什么?

除了核心代碼,沒(méi)有什么值得測(cè)試的。

……

本篇想要通過(guò)探討這些問(wèn)題背后的困難,來(lái)說(shuō)明程序員怎樣通過(guò)編寫自測(cè)代碼更有效率的進(jìn)行開(kāi)發(fā)。

一個(gè)例子

首先我們看一個(gè)例子。



全項(xiàng)目唯一的測(cè)試

不止一次,我在各種項(xiàng)目中看到這樣的測(cè)試,往往這也是整個(gè)工程中唯一一個(gè)測(cè)試。

可以看出,開(kāi)發(fā)者認(rèn)為編寫是有必要的。所以按照“標(biāo)準(zhǔn)”的做法建立了測(cè)試目錄,引入JUnit依賴。并且利用它在開(kāi)發(fā)的初期來(lái)驗(yàn)證某些技術(shù)疑問(wèn),一般是某些當(dāng)時(shí)還不熟悉的第三方庫(kù),或者數(shù)據(jù)庫(kù)、中間件等外部依賴。

項(xiàng)目初期技術(shù)調(diào)研階段很快過(guò)去后,似乎沒(méi)有更多需要驗(yàn)證的問(wèn)題。因而也就再?zèng)]有需要編寫測(cè)試的地方。

簡(jiǎn)單而言:“寫測(cè)試是應(yīng)該,但我們的代碼沒(méi)什么好測(cè)的”

測(cè)試,不僅僅關(guān)于未知

說(shuō)起測(cè)試,往往與未知相關(guān)聯(lián)。我們通過(guò)測(cè)試、調(diào)試、檢測(cè)來(lái)獲取反饋,不斷調(diào)整。



以上圖為例,一般想到的測(cè)試,都集中在“已知的未知”這個(gè)象限。正如前面的示例代碼,使用不熟悉的庫(kù)帶來(lái)未知。程序員通過(guò)在測(cè)試中調(diào)用和觀察結(jié)果來(lái)消除未知。

然而,對(duì)于自動(dòng)化測(cè)試來(lái)說(shuō),其實(shí)關(guān)注點(diǎn)在于已知。

“都已知了,還測(cè)試什么呀?”,也許你會(huì)有這樣的疑問(wèn)。

火柴問(wèn)題



火柴,這種行將消失的物品。也許現(xiàn)在的小朋友只是在《賣火柴的小女孩》中才得知它的存在。在我小時(shí)候,還是時(shí)常用到的。那時(shí),也許是工藝問(wèn)題,或者存儲(chǔ)條件有限,往往一盒火柴好多根都不能點(diǎn)著。記的那時(shí)聽(tīng)到的笑話:

小明的媽媽讓他去買盒火柴,不一會(huì)功夫買回來(lái)了。媽媽問(wèn):“你試過(guò)沒(méi)有,能點(diǎn)著嗎?”

“試過(guò)啦”,小明很驕傲的說(shuō),“每一根我都試了一遍。”

我把這種問(wèn)題稱為“火柴問(wèn)題”,往往傳統(tǒng)的質(zhì)量控制面臨的都是這類問(wèn)題,有如下限制:

?成本,顯然現(xiàn)實(shí)中不會(huì)有人把所有的火柴拿來(lái)測(cè)試。不過(guò)問(wèn)題的本質(zhì)并沒(méi)有變,在花費(fèi)的成本和獲得安全性之間取一個(gè)平衡。

?事后,造出火柴后才有能否點(diǎn)著的問(wèn)題。

?一次性,成本換取的安全是一次性的,每當(dāng)一個(gè)批次到來(lái)時(shí),以前的測(cè)試的付出都成為了沉沒(méi)成本。

另一種測(cè)試

讓我們來(lái)看另一種關(guān)于已知的測(cè)試。



Checklist

檢查清單。

比如每天出門的時(shí)候,我都會(huì)自然而然的檢查一遍,手機(jī)、鑰匙、錢包。就是個(gè)簡(jiǎn)單的清單。

清單是關(guān)于已知的,只有十分確定的事項(xiàng)才會(huì)列入在清單里。

清單本身很簡(jiǎn)單,并不能回答火柴問(wèn)題這樣的難題。但是不代表它沒(méi)有作用。以出門為例子,有時(shí)出門是每天都在做的上班通勤,有時(shí)是去面臨某個(gè)很大的未知,比如去見(jiàn)一個(gè)陌生的客戶,進(jìn)行重要談判。

這時(shí)如果有個(gè)水晶球,告訴你會(huì)成功失敗,甚至告訴你怎樣做才能成功,那就太好了。

然而沒(méi)有水晶球。

一個(gè)簡(jiǎn)單的清單至少保證你不會(huì)走在路上才發(fā)現(xiàn)忘帶手機(jī)。無(wú)論未知的挑戰(zhàn)是什么,忘帶手機(jī)基本上不會(huì)產(chǎn)生任何幫助。

切換回軟件開(kāi)發(fā)的場(chǎng)景,程序員夢(mèng)想中的好測(cè)試也許能告訴我們未知,甚至未知的未知結(jié)果。這在目前還不現(xiàn)實(shí)。那么寫一個(gè)測(cè)試確保你在不斷調(diào)整中不破壞正確的事情,仍是值得的。

可以看到,這種視角下的驗(yàn)證,與檢查火柴有所不同:

?預(yù)防,這種校驗(yàn)著眼于未來(lái),是為了避免更大的損失的投入。

?過(guò)程中,檢查是做事情步驟中的一個(gè)環(huán)節(jié)。

?反復(fù),越頻繁的行為越有必要進(jìn)行校驗(yàn),校驗(yàn)的越頻繁潛在收益越大。

假定你是獨(dú)自居住,出門前還是鎖門后發(fā)現(xiàn)沒(méi)帶鑰匙的成本,會(huì)有一個(gè)巨大的飆升。往往檢查列表都是在這種成本拐點(diǎn)前進(jìn)行的。

當(dāng)前標(biāo)題:程序員自己寫測(cè)試,還要測(cè)試人員做什么?
網(wǎng)站地址:http://chinadenli.net/news36/102236.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、域名注冊(cè)品牌網(wǎng)站設(shè)計(jì)、Google、小程序開(kāi)發(fā)靜態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

微信小程序開(kāi)發(fā)
欧美一级内射一色桃子| 久久本道综合色狠狠五月| 国产精品久久精品国产| 日本最新不卡免费一区二区| 五月天丁香亚洲综合网| 中文字幕人妻日本一区二区| 99久久精品国产日本| 国产男女激情在线视频| 在线免费观看黄色美女| 亚洲高清中文字幕一区二区三区 | 一二区不卡不卡在线观看| 亚洲av秘片一区二区三区| 99精品国产自在现线观看| 免费大片黄在线观看国语| 久热久热精品视频在线观看| 免费观看成人免费视频| 亚洲国产成人av毛片国产| 午夜小视频成人免费看| 日本办公室三级在线观看| 亚洲中文字幕视频在线播放| 国产熟女一区二区不卡| 国自产拍偷拍福利精品图片| 国产又色又爽又黄又大| 最近中文字幕高清中文字幕无| 丁香六月婷婷基地伊人| 一区二区免费视频中文乱码国产| 婷婷伊人综合中文字幕| 精品国模一区二区三区欧美| 国产成人精品一区二三区在线观看 | 少妇人妻精品一区二区三区| 美国女大兵激情豪放视频播放 | 神马午夜福利一区二区| 少妇人妻中出中文字幕| 欧美偷拍一区二区三区四区| 国产综合香蕉五月婷在线| 九九热视频经典在线观看| 美女被啪的视频在线观看| 人妻一区二区三区多毛女| 深夜视频成人在线观看| 日韩欧美高清国内精品| 最新国产欧美精品91|