中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

為什么開(kāi)發(fā)與測(cè)試?yán)掀苣?

2018-07-20    來(lái)源:編程學(xué)習(xí)網(wǎng)

容器云強(qiáng)勢(shì)上線!快速搭建集群,上萬(wàn)Linux鏡像隨意使用

讓我們思考幾個(gè)常見(jiàn)的問(wèn)題:

  • 軟件測(cè)試的目的是什么?

  • 開(kāi)發(fā)人員能否構(gòu)建出沒(méi)有Bug的完美軟件?

  • 測(cè)人人員和開(kāi)發(fā)人員是什么關(guān)系?

  • 軟件測(cè)試能否保證軟件質(zhì)量?

先閉目冥想五分鐘吧,然后可以嘗試著回答上面的問(wèn)題。

計(jì)算機(jī)先驅(qū) Maurice Wikes 回憶起 1949 年他在英國(guó)劍橋工作的情形,在拖著打孔紙帶上樓給雛形計(jì)算機(jī) EDASC 裝載程序時(shí),他看到了自己的未來(lái):

我強(qiáng)烈的意識(shí)到,生命中剩下的好日子,都將耗費(fèi)在給自己的程序找錯(cuò)誤上頭。

Maurice Wikes告訴我們,沒(méi)有完美的軟件。

我在我的微信訂閱號(hào)“程序視界”里發(fā)布過(guò)一篇薦書(shū)文,推薦了溫伯格技術(shù)思想三部曲中的《顛覆完美軟件::軟件測(cè)試必須知道的幾件事》。在這本書(shū)里,溫伯格也告訴我們,沒(méi)有完美的軟件。所有的開(kāi)發(fā)和測(cè)試人員都應(yīng)該讀讀那本書(shū)。

溫伯格在《顛覆完美軟件》中幾乎討論所有常見(jiàn)的與軟件測(cè)試相關(guān)的概念、問(wèn)題和指導(dǎo)思想,所以,在這篇文章里,我只能來(lái)吐槽啦,我將從以下幾方面列一些常見(jiàn)的現(xiàn)象,希望能引起大家的思考。

  • 測(cè)試和開(kāi)發(fā)的關(guān)系

  • 流程與標(biāo)準(zhǔn)

  • 資源

  • 態(tài)度

測(cè)試和開(kāi)發(fā)的關(guān)系

測(cè)試和開(kāi)發(fā)是對(duì)立的嗎?

從處理Bug的角度看,似乎可以這么說(shuō)。開(kāi)發(fā)人員既生產(chǎn)代碼,也生產(chǎn)Bug。因?yàn)殚_(kāi)發(fā)人員不可避免地會(huì)生產(chǎn)Bug,所以測(cè)試人員必須存在,以便在軟件交付之前盡可能多地檢出Bug,保證交付給客戶的軟件質(zhì)量更好一些。一個(gè)產(chǎn)Bug,一個(gè)挑Bug,看起來(lái)似乎是對(duì)立的。

在現(xiàn)實(shí)中,很多測(cè)試團(tuán)隊(duì)和開(kāi)發(fā)團(tuán)隊(duì)也正是因?yàn)檫@一點(diǎn)而搞得關(guān)系不和,甚至真的對(duì)立起來(lái)。請(qǐng)回想一下你周圍發(fā)生的與開(kāi)發(fā)和測(cè)試相關(guān)的事兒,看看有沒(méi)有遇到過(guò)下面的情景:

  • 開(kāi)發(fā)說(shuō),測(cè)試凈找麻煩,客戶跟本不可能像他們那樣使用軟件

  • 測(cè)試說(shuō),問(wèn)題總是會(huì)在看似極端的條件下產(chǎn)生,用戶總是會(huì)不經(jīng)意觸碰到看似極端的不可能出現(xiàn)的條件

  • 開(kāi)發(fā)說(shuō),測(cè)試花在異常情況下的精力比測(cè)試主流程還多,不知道輕重緩急

  • 測(cè)試說(shuō),開(kāi)發(fā)從來(lái)不考慮測(cè)試的感受,連測(cè)都不測(cè)就扔給我們

  • 開(kāi)發(fā)說(shuō),我都測(cè)了,還要測(cè)試人員干什么

  • 測(cè)試說(shuō),這么明顯的問(wèn)題你們都不測(cè)一下,把我們測(cè)試當(dāng)垃圾桶啊

  • ……

許許多多類似的問(wèn)題,讓開(kāi)發(fā)和測(cè)試的關(guān)系從撲朔迷離、相愛(ài)相殺走向?qū)α。我?jiàn)過(guò)開(kāi)發(fā)和測(cè)試搞冷戰(zhàn)某人遇見(jiàn)某人側(cè)臉而過(guò),也見(jiàn)過(guò)測(cè)試經(jīng)理和開(kāi)發(fā)經(jīng)理打架,還見(jiàn)過(guò)高層領(lǐng)導(dǎo)故意讓測(cè)試團(tuán)隊(duì)和開(kāi)發(fā)團(tuán)隊(duì)關(guān)系緊張以為這樣可以提高測(cè)試效率也能給開(kāi)發(fā)壓力最終會(huì)產(chǎn)出更高質(zhì)量的軟件……

實(shí)際上,測(cè)試和開(kāi)發(fā)擁有同一個(gè)目的:讓軟件更完美。測(cè)試和開(kāi)發(fā)的關(guān)系,是一個(gè)問(wèn)題的兩面,應(yīng)該是相輔相成和平共處的。測(cè)試不是為了挑刺兒,他提出的問(wèn)題也不針對(duì)生產(chǎn)軟件的開(kāi)發(fā)人員,而僅僅是在努力想讓開(kāi)發(fā)人員的產(chǎn)出物看起來(lái)更好用。只要開(kāi)發(fā)不將測(cè)試提Bug這個(gè)行為看成針對(duì)個(gè)人的行為,一切就有了美好的前提。

否定軟件,并不是否定開(kāi)發(fā)軟件的人。這是開(kāi)發(fā)和測(cè)試都需要明確的一個(gè)原則和前提。

還有的人認(rèn)為開(kāi)發(fā)和測(cè)試之關(guān)系類似皮與毛,皮之不存毛將焉附?所以有的開(kāi)發(fā)也會(huì)因此而有優(yōu)越感:沒(méi)我們寫(xiě)軟件,你們測(cè)試早下崗了!可是,開(kāi)發(fā)不寫(xiě)軟件,開(kāi)發(fā)也下崗了耶!

感謝開(kāi)發(fā)的不完美,讓測(cè)試可以有事可做并練就慧眼。

感謝測(cè)試的認(rèn)真細(xì)致和耐心體貼,讓開(kāi)發(fā)可以發(fā)現(xiàn)自己的不完美并有機(jī)會(huì)提升自己——那些說(shuō)我軟件不好的,都是為了我好。

資源

別動(dòng)我們測(cè)試的服務(wù)器,你們自己搭一個(gè)!

我們沒(méi)環(huán)境,不用你們的用誰(shuí)的?

誰(shuí)把我們的測(cè)試手機(jī)拿走了?你們申請(qǐng)一個(gè)嘛,老來(lái)占我們?cè)O(shè)備。

誰(shuí)在用我們的賬號(hào)?招呼都不打!我要用,趕緊退出來(lái)!

有時(shí)開(kāi)發(fā)和測(cè)試之間也會(huì)有資源上的沖突,要有努力的有創(chuàng)造性的解決(我可以負(fù)責(zé)任地說(shuō),裝黑蘋(píng)果不是好辦法),不要讓大家伙的工作卡在環(huán)境上,這是管理者要解決的基本問(wèn)題。我見(jiàn)過(guò)很多非常棒的一線經(jīng)理,在現(xiàn)實(shí)制約下,主動(dòng)把自己的手機(jī)、iPad都貢獻(xiàn)出來(lái)當(dāng)做測(cè)試設(shè)備。這也是解決資源問(wèn)題的一種辦法哦。

流程與標(biāo)準(zhǔn)

你身邊的人員會(huì)這么抱怨嗎:

  • 開(kāi)發(fā)根本不看我們的測(cè)試用例,評(píng)審郵件從來(lái)就不回復(fù)

  • 我們一報(bào)Bug,開(kāi)發(fā)就說(shuō)用戶根本不可能這么用,還說(shuō)不知道我們?cè)趺磿?huì)這么測(cè)

  • 送測(cè)單里根本不寫(xiě)測(cè)試范圍或者寥寥幾句跟沒(méi)寫(xiě)一樣

  • 開(kāi)發(fā)調(diào)整設(shè)計(jì)從來(lái)也不告訴我們

  • 為什么產(chǎn)品經(jīng)理和UI只和開(kāi)發(fā)討論需求變更?

  • 為什么發(fā)布計(jì)劃里不給測(cè)試預(yù)留測(cè)試時(shí)間?

  • 為什么開(kāi)發(fā)寫(xiě)完代碼測(cè)都不測(cè)就扔給我們?

  • 為什么客戶那里發(fā)現(xiàn)了問(wèn)題老問(wèn)是誰(shuí)測(cè)的、為什么沒(méi)測(cè)出來(lái)?

  • 測(cè)試?yán)鲜且宦暡豢跃桶袯ug優(yōu)先級(jí)設(shè)置為Major

  • 測(cè)試總是把大量時(shí)間花在用戶根本不可能用到的功能上

  • 測(cè)試分不清哪些什么是重點(diǎn),你給他說(shuō)他還老是一堆道理這了那了

  • 測(cè)試提的Bug,現(xiàn)象描述也不準(zhǔn)確,重現(xiàn)步驟也沒(méi)有,有的根本就知道是不是誤操作

  • 測(cè)試?yán)蟻?lái)打斷我,一會(huì)兒叫一下一會(huì)兒叫一下,根本沒(méi)辦法專注開(kāi)發(fā)

  • jira上的Bug重復(fù)率太高,一個(gè)問(wèn)題提N遍,難道就不能合并一下?

  • 測(cè)試發(fā)現(xiàn)Bug,一聲招呼都不打就直接告訴老板了,搞得我很被動(dòng)

  • 測(cè)試就是專門(mén)挑刺兒的,有勁不往正地兒使,你倒是測(cè)測(cè)用戶常用的功能啊

  • 那么簡(jiǎn)單的Bug都能流出到用戶那里,真不知道測(cè)試怎么測(cè)的

  • 開(kāi)發(fā)老嫌測(cè)試報(bào)告數(shù)據(jù)不漂亮,逼著我們調(diào)整

Ok,如果你身邊的開(kāi)發(fā)和測(cè)試從來(lái)沒(méi)有過(guò)類似的問(wèn)題,那很好,恭喜你,看來(lái)你們的團(tuán)隊(duì)人nice協(xié)作也很順暢,棒棒噠。

假如你身邊充斥著這樣嘈雜的抱怨,那說(shuō)明什么呢?開(kāi)發(fā)、測(cè)試、發(fā)布這一套流程有問(wèn)題?還是團(tuán)隊(duì)缺乏明確的指向來(lái)引導(dǎo)大家向積極、有效的行為靠近?

流程和標(biāo)準(zhǔn)總是有待解釋的,再好的規(guī)則,歪嘴和尚也能把它念斜……

我們隨便挑一個(gè)問(wèn)題吧:為什么開(kāi)發(fā)寫(xiě)完代碼測(cè)都不測(cè)就扔給我們?這個(gè)問(wèn)題普遍存在,它反映出的是程序員和測(cè)試人員的工作邊界難以界定的矛盾。

程序員會(huì)說(shuō),我都測(cè)一遍,還要你們測(cè)試做什么?

測(cè)試會(huì)說(shuō),你測(cè)都不測(cè),冒煙都過(guò)不了,有沒(méi)有責(zé)任心?

程序員說(shuō),要我寫(xiě)測(cè)試用例,搭各種環(huán)境,遍歷各種正常、異常邏輯,我還有沒(méi)有時(shí)間寫(xiě)代碼了?

測(cè)試會(huì)說(shuō),我們測(cè)試是垃圾桶嗎,什么爛玩意兒都直接扔給我們,我們的時(shí)間就那么不值錢(qián)?

開(kāi)發(fā)會(huì)說(shuō),測(cè)試本來(lái)就是干這個(gè)的,你不測(cè)誰(shuí)測(cè)?

……

像這樣的問(wèn)題,能制定一個(gè)標(biāo)準(zhǔn),說(shuō)明什么樣的邏輯開(kāi)發(fā)要自測(cè)覆蓋什么樣的邏輯可以交給測(cè)試來(lái)測(cè)?能畫(huà)一條三八線嗎?

不能。所以,這個(gè)時(shí)候,靠譜的一線管理者就顯得很重要。如何創(chuàng)造性的發(fā)現(xiàn)適合團(tuán)隊(duì)的方法來(lái)讓大家順暢地協(xié)同工作,比標(biāo)準(zhǔn)、制度更重要,這往往依賴于技術(shù)管理者的能力和團(tuán)隊(duì)成員的意識(shí)。沒(méi)有普適的方法,只有適合這個(gè)組織的、此時(shí)此地的策略,加油吧,在戰(zhàn)斗中摸索出最適合當(dāng)下的道路。

那什么是靠譜的一線管理者呢?

溫伯格《成為技術(shù)領(lǐng)導(dǎo)者》一書(shū)中對(duì)領(lǐng)導(dǎo)職責(zé)的定義如下:

領(lǐng)導(dǎo)的職責(zé)就是創(chuàng)造這樣一個(gè)環(huán)境,每個(gè)人都能在其中發(fā)揮出更多的能力。

如果一個(gè)技術(shù)領(lǐng)導(dǎo)帶領(lǐng)的團(tuán)隊(duì),大部分人都能專心做與其能力適配的事情而不用整天泡在與本節(jié)前面所列類似的問(wèn)題里,那他基本上就算是比較靠譜了。

至于像給測(cè)試預(yù)留多長(zhǎng)的測(cè)試周期、調(diào)整設(shè)計(jì)要不要通知測(cè)試、需求調(diào)整要不要測(cè)試參與等問(wèn)題,合理的流程和標(biāo)準(zhǔn)可以起到很大的輔助作用,技術(shù)領(lǐng)導(dǎo)者只要依據(jù)合理的制度,引導(dǎo)大家有效參與,就可以化解。

態(tài)度

場(chǎng)景一:

測(cè)試MM對(duì)阿猿說(shuō)發(fā)現(xiàn)了一個(gè)Bug。

阿猿矢口否認(rèn):不可能,絕對(duì)不可能!

MM:真的有Bug,你過(guò)來(lái)看一下!

阿猿:我都不用看,在我這兒好好兒的。

MM:你來(lái)看一下嘛……

阿猿:看什么看,肯定你環(huán)境問(wèn)題,動(dòng)什么東西了嗎?重啟了嗎?

場(chǎng)景二:

測(cè)試MM想在jira上提個(gè)Bug,先在QQ上對(duì)阿猿說(shuō):有個(gè)Bug,你過(guò)來(lái)看下?

阿猿:忙著呢,焦頭爛額的。

MM:一分鐘都用不了,你來(lái)看下吧。

阿猿:思路一打斷就不好恢復(fù)了,等會(huì)兒!

MM:你不看我提到j(luò)ira上了啊。

阿猿:隨便,你不就是愛(ài)提Bug嘛。

場(chǎng)景三:

測(cè)試MM呼叫阿猿:阿猿阿猿,程序又崩潰了,快來(lái)看看!

阿猿慢騰騰地起身過(guò)來(lái),鼠標(biāo)點(diǎn)幾下:看不出來(lái)什么問(wèn)題,你怎么操作的?

MM:這樣點(diǎn)一下,那樣,這樣,……回車……。

阿猿:重現(xiàn)不了啊,你想辦法重現(xiàn),重現(xiàn)了再叫我,我忙著呢。

MM:……

我曾經(jīng)畫(huà)過(guò)一張暴漫,以“她發(fā)現(xiàn)了一個(gè)Bug”為題發(fā)布在微信訂閱號(hào)“程序視界”里,再現(xiàn)類似的場(chǎng)景,感興趣的可以在訂閱號(hào)內(nèi)回復(fù)10019查看。

開(kāi)發(fā)和測(cè)試的日常工作中,上面的情景不斷上演,這其中有一部分原因來(lái)自態(tài)度。我們有時(shí)還能聽(tīng)到類似下面的話:

  • 你Bug里的現(xiàn)象描述根本沒(méi)用

  • 你根本就沒(méi)理解這個(gè)邏輯,給你說(shuō)不清楚

  • 測(cè)試什么都不懂……

  • 你聽(tīng)我的,我讓你怎么測(cè)你就怎么測(cè)

  • 你這種測(cè)法兒,再好的軟件都經(jīng)不起你折騰

  • 用戶根本不可能這樣用,你們整來(lái)整去凈瞎耽誤工夫

  • 一輪都沒(méi)測(cè)完,你們就給老板說(shuō)可以按期交付沒(méi)問(wèn)題?

  • 你們安排計(jì)劃時(shí)根本不考慮測(cè)試,三天,三天怎么可能測(cè)得完!

  • ……

有時(shí),有一些開(kāi)發(fā)人員會(huì)用技術(shù)優(yōu)勢(shì)藐視測(cè)試,認(rèn)為測(cè)試工作技術(shù)含量低,內(nèi)心認(rèn)為測(cè)試是附屬?zèng)]地位,說(shuō)話就不太客氣……測(cè)試會(huì)感覺(jué)到,反過(guò)來(lái)也會(huì)對(duì)開(kāi)發(fā)有意見(jiàn)……就這么,從相敬如賓開(kāi)始走向嫌怨叢生……

有個(gè)朋友的QQ簽名檔是:沒(méi)有自我,只有大道。我琢磨,放在軟件項(xiàng)目里,也挺適用的。

其實(shí),開(kāi)發(fā)和測(cè)試擁有共同的目的:生產(chǎn)高質(zhì)量軟件。具體說(shuō),每一個(gè)產(chǎn)品、項(xiàng)目、版本都有明確的目標(biāo),這些目標(biāo)是屬于開(kāi)發(fā)和測(cè)試的,是大家的。我們把共同的目標(biāo)牢記在心,擺在首位,我們還要想著別人所做的一切,都是針對(duì)軟件本身,都是在為目標(biāo)而努力,這樣就心平氣和多了,就容易從當(dāng)下的泥沼中超脫出來(lái),求同存異共同前進(jìn)。

標(biāo)簽: 代碼 服務(wù)器

版權(quán)申明:本站文章部分自網(wǎng)絡(luò),如有侵權(quán),請(qǐng)聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點(diǎn)!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請(qǐng)與原作者聯(lián)系。

上一篇:幾種開(kāi)源工作流引擎的簡(jiǎn)單比較

下一篇:Java 8的五大開(kāi)發(fā)技巧