精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

如果無暇重構,我們是否應該為遺留代碼編寫測試方案?

譯文
開發 項目管理 測試
編者按:本文主要圍繞著“是否應該為遺留代碼編寫測試方案”進行討論,一位同事主張“一次性大規模重構”要比多次小規模測試更好的觀點,引來多位網友不同的看法。以下是幾位網友的回答以及得到不同票數的肯定。歡迎朋友們一起討論!

編者按:本文主要圍繞著“是否應該為遺留代碼編寫測試方案”進行討論,一位同事主張“一次性大規模重構”要比多次小規模測試更好的觀點,引來多位網友不同的看法。以下是幾位網友的回答以及得到不同票數的肯定。歡迎朋友們一起討論!

[[114058]] 

網友is4發問:

在工作中遇到問題時,我一般傾向于采取《高效處理遺留代碼》這本書給出的建議。我會消除代碼依賴性,將一部分代碼轉移到VisibleForTesting公共靜態方法及新類當中、從而使這些代碼(或者至少是其中的一部分)具備可測試條件。另外,我還會編寫測試來確保自己的修改方案或者新功能添加操作不會影響遺留代碼的固有效果。

但一位同事對我的作法提出了不同意見。他的觀點是:

• 首先,原始代碼在新環境下的工作效果可能并不盡如人意。而為其編寫測試也許會讓日后的修復與修改工作變得更為困難,因為開發人員必須在著手之前先看懂這些測試本身并對其加以修改。

• 如果遺留的GUI代碼中包含某種邏輯(例如,~23 lines,2-3 if/else blocks),那么為此編寫測試實在無甚價值——畢竟這部分代碼的功能根本無足輕重。

• 類似的糟糕狀況在代碼庫的其它部分也可能存在(我是個新人,因此還沒見過此類情況);因此通過一次性大規模重構將它們徹底掃清的作法更輕松些。將邏輯提取出來能夠消除這部分代碼在未來引發麻煩的可能性。

如果我們沒有足夠的時間對遺留代碼進行全面重構,那我是否應該放棄提取可測試部分并為之編寫測試的作法?這樣做有哪些我沒有注意到的弊端?請大家提出自己的意見。

感興趣的朋友可以點擊此處查看關于這個問題的原版表述。

這是種錯覺

網友Killian Foth的回答(獲得79票支持):

我來說說自己對于這個問題的一點不成熟見解:不編寫測試的理由看起來似乎廣泛適用,但這其實只是種錯覺。

首先,沒錯,現有代碼的確有可能存在錯誤——但同時它也有可能正確無誤。由于相關應用程序整體對于我們來說存在價值(否則我們大可以直接將其拋棄),因此在不具備詳細信息的前提下,我們不妨假定其是正確的。“編寫測試會讓事情更麻煩的原因在于,這樣將給整體方案引入更多代碼”,這種態度既簡單粗暴又站不住腳。

其次,請通過各種手段擴大現有重構、測試以及改進成果的適用范圍,從而在實現***價值的同時盡可能縮減需要投入的精力。利用值進行格式設定的GUI方案不該被優先考慮。不過僅僅因為某些內容“非常簡單”就放棄對其進行測試也是不科學的。幾乎所有嚴重錯誤的產生都是因為人們自以為了解真實信息,但實際情況卻恰恰相反。

第三點,“我們將在未來一次性進行大規模重構”,這個點子相當不錯。通常來講,就算暫時按兵不動、將來也總有機會對遺留代碼進行這樣一輪大規模清洗的。但我個人更信奉“穩扎穩打才能贏”的理念。

建立堅實的基礎

網友guillaume31的回答(獲得34票支持):

我來談談自己的幾點思考:

當我們對遺留代碼進行重構時,自己編寫的測試是否會偶爾與理想規范產生沖突其實并不重要。真正重要的是,它們能夠切實對程序的當前運行狀態作出評估。重構的意義在于通過一系列細微且獨立的功能性步驟讓代碼變得更加簡潔;大家肯定不希望在進行重構的同時還要操心漏洞修復工作。而且如果我們在過程中發現了嚴重漏洞,它也不會隨著時間推移而自行消失。我們可以為其編寫一套回歸測試并暫時將其禁用,或者在自己的待辦事宜列表中加中這項漏洞修復任務以待日后處理。一次做一件事,這才叫有條不紊。

我也同意,純粹的GUI代碼很難進行測試,可能也不太符合《高效處理遺留代碼》一書中的重構指導方針。但這并不意味著我們應該把與GUI層無關的其它代碼同樣拋在一邊,而不對其進行任何測試。另外需要強調一點,“12 lines, 2-3 if/else block”絕對不能算是無足輕重。任何哪怕涉及一丁點狀態邏輯的代碼都應該被加以測試。

根據我的個人經驗,大規模重構工作難度很高而且效果一般都不好。如果大家不能為自己設定精確而且細化的執行目標,那么整個重構過程很可能陷入無休無止的惡性循環,甚至最終變成像拉住頭發把自己提離地面這種根本沒有希望的任務。修改的程度越高,破壞原有內容的風險就越大、導致我們陷入失敗境地的可能性也將愈發高企。

利用臨時性的小規模重構逐步取得進展并不意味著要“破壞未來大規模重構的可能性”,這其實是一種促進手段——即鞏固應用程序所依賴的主干與根基。總之,我們應當采取這種步步為營的應對策略。

得不償失

網友Robbie Dee的回答(獲得9票支持):

某些企業的固有文化主張允許開發人員在任何時間對代碼進行強化,而非為其提供更為直接的附加價值——也就是新功能。

也許隨意發表個人意見有點多此一舉,但在我看來這種作法真的有點得不償失。純粹、簡潔的代碼當然能為開發人員帶來回報,不過這樣的回報實在不夠明顯。

我個人贊同所謂“童子軍原則”(即加入童子軍的小朋友需要在‘離開營地前進行清掃活動’),但其他人(正如大家所見)對此往往不以為然。

也就是說,不可知性與技術工作壓力會對軟件帶來不利影響。也許前任開發者時間太過緊張(或者可能是太懶甚至缺乏經驗),因此他們也許已經在有限的時間內拿出了雖然存在漏洞但已經是***的設計方案。雖然對這些開發成果進行重構似乎能夠收到很好的效果,但同時也可能給原本正常運作的代碼帶來新的漏洞、甚至進而給用戶造成影響。

比較之下,某些改動的風險可能比其它變更更低一些。舉例來說,我所面對的方案當中存在大量重復代碼,完全可以被安全地從對業務影響很小的子程序中轉移出來。

總結來講,我們必須要在這樣的兩難選擇中作出判斷:既要考慮自己未來何時真正著手進行重構,又要確定從零開始編寫自動化測試到底能為業務帶來哪些切實存在的價值。

譯者:核子可樂

英文:Shoud I Write Tests for Legacy Code if There’s No Time for Refactoring

責任編輯:林師授 來源: 51CTO
相關推薦

2022-12-05 10:58:52

2011-05-26 09:26:48

網絡設備

2022-07-14 08:16:24

Node.js后端自動化測試

2022-08-02 08:07:24

單元測試代碼重構

2015-07-16 11:14:32

云服務DRaaSAWS

2023-02-24 11:29:13

2017-03-13 20:30:23

數據中心服務器虛擬化

2016-11-30 18:35:03

JavaScript

2021-10-10 23:02:49

Golang語言代碼

2013-06-04 09:16:29

Google存儲數據

2015-09-09 10:57:31

數據時代智能產品

2018-05-03 15:34:34

組件測試遺留系統微服務

2015-07-16 10:49:56

2010-07-05 14:47:26

Gartner社交網絡

2020-03-09 14:10:48

代碼開發工具

2021-09-26 11:09:57

人工智能AI深度學習

2023-09-11 11:05:49

軟件開發TDD

2014-04-24 09:52:14

2022-11-04 10:46:40

物聯網智能家居

2009-06-29 15:12:00

JNA
點贊
收藏

51CTO技術棧公眾號

久久99精品久久久久久青青日本| 91视频在线观看免费| 欧美一区二区二区| 欧美最大成人综合网| 九九热这里有精品视频| 高清电影一区| 91在线观看高清| 久久久91精品| 亚洲少妇第一页| 欧美套图亚洲一区| 中日韩视频在线观看| 日韩一区二区三免费高清| 日韩经典在线视频| 99超碰在线观看| 老牛国内精品亚洲成av人片| 一区二区三区在线免费| 成人免费自拍视频| 国产午夜福利一区| 一呦二呦三呦精品国产| 97久久精品人人爽人人爽蜜臀| 日韩国产精品亚洲а∨天堂免| 精品一区二区三区视频日产| 免费一级片视频| 国产亚洲高清一区| 亚洲欧洲综合另类| 国产精品综合不卡av| 精品无码在线观看| av免费在线一区| 中文字幕欧美区| 国产成人精品一区| 右手影院亚洲欧美| 惠美惠精品网| 国产午夜亚洲精品午夜鲁丝片 | jlzzjlzz亚洲女人| 91豆麻精品91久久久久久| 久久另类ts人妖一区二区| 91午夜视频在线观看| 日韩中文av| 日本电影亚洲天堂一区| 日本最新一区二区三区视频观看| 久久久久久久久久久久久女过产乱| 日韩深夜视频| 久久麻豆一区二区| 国产精品视频自拍| 午夜69成人做爰视频| 成人h动漫免费观看网站| 亚洲超丰满肉感bbw| 国产精品果冻传媒潘| 91黄色免费视频| 丝袜美腿精品国产二区| 欧美.www| 成人免费a视频| 69174成人网| 91蜜桃免费观看视频| 毛片激情在线观看| www.av毛片| 91精品国产综合久久久久久| www.爱久久| 青青草福利视频| 久久视频在线播放| 日韩久久视频| 国产精品福利导航| 日韩精品视频免费专区在线播放 | 亚洲妇熟xxxx妇色黄| 国产精品中文字幕一区二区三区| 亚洲天天在线日亚洲洲精| 日日噜噜噜噜久久久精品毛片| 国产91免费在线观看| 国产日韩亚洲| www.日韩.com| 国产一级片中文字幕| 2020av在线| 中文乱码免费一区二区| 91丝袜脚交足在线播放| 久久精品视频5| 999久久久免费精品国产| 精品噜噜噜噜久久久久久久久试看| 午夜一区二区三区| 免费看日韩av| 久久99深爱久久99精品| 国内免费久久久久久久久久久| 亚洲一二区在线观看| 麻豆国产在线| 亚洲美女免费在线| 色一情一乱一伦一区二区三区 | 日本大香伊一区二区三区| 在线播放 亚洲| 日韩中文字幕影院| 加勒比av一区二区| 日韩av大片免费看| 亚洲一区二区91| 欧美国产偷国产精品三区| 精品视频偷偷看在线观看| 992kp免费看片| 日韩av免费| 欧美午夜激情在线| 99热亚洲精品| 91在线中文| 国产精品久久久久久久久免费丝袜 | 日韩欧美黄色影院| 欧美日韩在线免费播放| 91高清视频在线观看| 亚洲激情欧美激情| 中文字幕久久综合| 高清性色生活片在线观看| 久久综合网色—综合色88| 国产伦一区二区三区色一情| 国产精品久久久久久免费| 久久九九免费| 欧美一级电影久久| 日本一级片免费看| 亚洲国产91| 欧美激情综合色| 无码黑人精品一区二区| 999久久久国产精品| 在线视频精品一| 蜜桃久久精品成人无码av| 一区二区小说| 亚洲精品自拍第一页| 大尺度做爰床戏呻吟舒畅| 亚洲天堂av资源在线观看| 欧美精品久久久久久久多人混战| 免费看黄在线看| 草草视频在线| 精品久久久在线观看| 播放灌醉水嫩大学生国内精品| 一级毛片视频在线观看| 国产精品国产自产拍高清av王其| 福利视频一区二区三区| 精品国产免费无码久久久| 韩国欧美国产1区| 亚洲综合中文字幕在线| 不卡视频在线播放| 成人免费观看av| 精品国产一区二区三区麻豆小说 | 女人黄色一级片| 93在线视频精品免费观看| www国产91| 青娱乐国产在线视频| 99伊人成综合| 欧美专区在线视频| 亚洲 欧美 日韩 在线| 久久精品免费观看| 91传媒视频免费| 天堂网在线资源| 国产亚洲短视频| 中文字幕日韩精品一区二区| 羞羞污视频在线观看| 性感美女久久精品| 久久精品99国产| 欧洲亚洲精品| 亚洲成人黄色在线| 国产熟妇久久777777| 国产精品成人av| 欧美激情按摩在线| 国产污视频网站| 国产激情一区二区三区四区| 国产一区二区免费电影| 国产午夜精品一区理论片| 亚洲天堂免费看| 青青艹视频在线| 日韩一区二区三区四区五区| 日韩欧美一区中文| 亚洲av无码一区二区二三区| 国产精品国产三级国产在线观看 | 视频一区二区欧美| 91久久国产精品| 牛牛影视精品影视| 一区二区三区四区视频精品免费| 一区二区不卡在线| 678在线观看视频| 91福利精品第一导航| 免费黄色av网址| 日韩中文欧美| 91tv亚洲精品香蕉国产一区7ujn| 91视频免费网址| 国产在线视频一区二区| 欧美激情第六页| 中文字幕在线观看播放| 在线一区二区三区做爰视频网站| 国内自拍视频网| 国产精品chinese在线观看| 最新69国产成人精品视频免费| 午夜激情福利电影| 中文欧美日韩| 99理论电影网| 天堂中文а√在线| 色94色欧美sute亚洲线路一ni| xxxx一级片| 日韩影视高清在线观看| 欧美国产日产韩国视频| 波多野结衣视频免费观看| 国产999精品久久| 在线视频亚洲自拍| 亚洲承认视频| 亚洲免费成人av电影| www.youjizz.com亚洲| 国产麻豆视频一区| 亚洲制服中文| 成人看片毛片免费播放器| 亚洲精品小视频在线观看| 免费视频一二三区| 国产一区在线不卡| 一区二区三区四区视频在线| 三级成人在线| 一区二区三区四区视频| 国产一区二区视频网站| 久久久亚洲高清| 北条麻妃69av| 校花撩起jk露出白色内裤国产精品| 伊人久久男人天堂| 无码人妻一区二区三区免费| 91丨porny丨中文| 免费欧美一级视频| 天堂99x99es久久精品免费| 欧美精品aaa| 亚洲国产中文字幕在线| 一区二区三区在线观看动漫 | 成人三级视频在线观看| 久久精品国语| 久久婷婷开心| 97久久香蕉国产线看观看| 亚洲情综合五月天| 久久永久免费视频| 亚洲国产精品传媒在线观看| 浓精h攵女乱爱av| 国产高清久久| 97se在线视频| 99热99re6国产在线播放| 亚洲精品国产综合久久| 日日骚av一区二区| 国产欧美日韩亚州综合| 免费日韩视频在线观看| 国产在线日韩精品| 91久久在线观看| 日韩经典av| 日韩精品视频在线观看免费| 国产污视频网站| 中文字幕佐山爱一区二区免费| 99视频精品免费| 日韩三级在线| av一区观看| 亚洲欧洲自拍| 久久精品国产清自在天天线| 国产18精品乱码免费看| 色综合久久综合网| 天天色天天综合| 成人午夜又粗又硬又大| 国产在线青青草| 成人av二区| 91黄在线观看| 暖暖成人免费视频| 久久精品最新地址| 性xxxfllreexxx少妇| 欧美日韩国产免费一区二区| 国产小视频在线看| 久久久av毛片精品| 亚洲无在线观看| 国产精品入口| 中文字幕一区二区三区四区五区六区| 四虎4545www国产精品| 欧美成人精品在线观看| 亚洲欧美综合一区二区| 欧美日韩国产综合草草| 日本一二三区不卡| 国产精品美女久久久久久久久久久| 国产免费黄视频| 7777久久香蕉成人影院| 久久亚洲午夜电影| 国产日韩在线观看视频| 日本精品视频在线| 影音先锋中文在线视频| 一区二区成人av| 天天操天天干天天操| 91精品婷婷国产综合久久性色| 日本午夜精品视频| 91污片在线观看| 曰本三级日本三级日本三级| 日韩精品一级中文字幕精品视频免费观看 | 99久久综合精品| 午夜免费一区二区| 亚洲日本视频| 美女在线免费视频| 欧美日韩性在线观看| 国产偷国产偷亚洲高清97cao| 女人高潮被爽到呻吟在线观看| 亚洲精品久久在线| 亚洲va天堂va欧美ⅴa在线| 精品婷婷伊人一区三区三| 欧美福利视频一区二区| 亚洲日本一区二区三区| 成人无码av片在线观看| 国产一区二区三区四区五区入口 | 国产日韩久久| 日韩三级精品| 91视频国产高清| 欧美日韩国产网站| 日韩美女中文字幕| 在线观看欧美日韩电影| 91国产美女视频| 成人黄色动漫| 久久久久国产视频| 国精一区二区三区| 欧美国产日韩视频| 成人免费高清| 欧美超级免费视 在线| 欧美jizzhd69巨大| 中文字幕日本欧美| 国产福利在线看| 亚洲视频一区二区三区| 日本1级在线| 亚洲另类激情图| 毛片免费在线| 亚洲天堂成人在线| 嫩草研究院在线观看| 亚洲热线99精品视频| 免费黄网站在线观看| 亚洲天堂av在线免费观看| 北岛玲一区二区三区| 中文字幕欧美日韩| 日本福利专区在线观看| 久久手机免费视频| 欧美videossex| 97精品在线视频| 小草在线视频免费播放| 青青a在线精品免费观看| 性高爱久久久久久久久| 国产精品久久久久久久久久ktv | 美女一区2区| 裸模一区二区三区免费| 欧美精品羞羞答答| 伊人久久青草| 欧美精品导航| 国产精品333| 欧美a级理论片| www.色就是色.com| 国产精品一二三四区| 美女搡bbb又爽又猛又黄www| youjizz国产精品| 亚洲一区二区自偷自拍 | 成人在线观看黄色| 中文字幕日韩有码| 大片免费在线观看| 欧美激情视频网| 黄色成人免费网| 国产精品中文字幕在线| 99久久香蕉| 欧美日韩国产精品一卡| 久久美女视频| 久久国产午夜精品理论片最新版本| 综合激情视频| 九色在线视频观看| 免费高清不卡av| 国产精品无码自拍| 91蜜桃在线视频| 欧美日韩一区三区四区| 国产特级黄色片| 亚洲国产成人精品久久| 国产三级伦理片| 盗摄精品av一区二区三区| 插我舔内射18免费视频| 久久综合色播五月| 精品免费国产一区二区| 国产一区二区三区四区视频| 日韩电影免费网站| 欧美日韩高清一区| 欧美日韩一道本| gogogo高清在线观看免费完整版| 午夜片欧美伦| 日韩精品免费在线播放| 欧美日韩一区二区三区69堂| 午夜伦理福利在线| 成人欧美一区二区三区1314| 久久精品99无色码中文字幕| 全黄性性激高免费视频| 国产精品久久久久久无人区| 精品国产乱子伦一区二区| 欧美三级三级三级| 久久久99精品视频| 亚洲欧洲国产综合| 国内精品嫩模av私拍在线观看| 色噜噜狠狠成人网p站| 亚洲日本无吗高清不卡| 在线免费观看一级片| 日韩天天综合| 综合久久五月天| 天堂av2020| 性欧美1819sex性高清| 亚洲国产综合视频在线观看| 亚洲精品一卡二卡三卡四卡| 亚洲人妻一区二区三区| 一区二区三区高清视频在线观看| 在线视频国内自拍亚洲视频| 成人在线看视频| 日本在线播放一二三区| 亚洲三级在线观看| 樱空桃在线播放| 1024日韩| 久久无码人妻一区二区三区| 中文字幕不卡的av|