天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

你這不是測試驅動開發

  英文原文:“That’s Not TDD” 

  幾個月前,我去一個客戶那里,他們在使用測試驅動開發上遇到了很多問題。

  “我們的單元測試用例要半個小時才能跑完,”他說。

  “你們這不是在做驅動測試開發,”我說。“為了讓測試發揮效能,所有的測試必須在幾秒鐘內能跑完,否則的話,程序員不得不頻繁的停下來等待測試。”

  “可是怎樣才能讓它們快起來?”他問,“光連接數據庫就需要30秒”

  于是,我想他展示了一種叫做依賴注入的技術,它能讓你使用一個偽造對象來模擬數據庫。“你并不需要測試你數據庫,”我說。“記住,測試應該是測試那些不受控制的東西,對于測試所依賴的東西,你應該使用模擬工具使它們處于控制之中。”

  他們遇到的另外一個問題 —— 我最近也是聽到了很多次 —— 是他們的測試程序不但沒起到好的作用,反而成了一個負擔。“我們三天兩頭的要重構程序,關聯的就需要重構測試程序”,這樣的話從客戶那里可以經常聽到。

  這種問題是他們把TDD想成了QA。TDD不是QA。QA是來保證程序能正確的運行的。TDD是使用斷言(assertion)來表現系統的關鍵特征。在QA里,我們用盡可能多的方法來測試系統中可能會出錯的地方。在TDD里,我們用應盡可能少的測試來表現系統的關鍵特征。

  我遇到的大多數開發人員都很重視代碼質量,努力寫出高質量的代碼,程序看起來很整潔。但測試用程序也是程序,經常的我能看到測試程序就寫的不是那么好。

  例如,一些程序員會很認真的把產品程序里的冗余部分清理干凈,但在測試程序中卻留下大量的無用的代碼。任何冗余都不是好事,冗余的測試也是如此,如果程序有變化,冗余的測試會花掉你額外的時間去重構。

  當系統出問題時,測試程序就體現出來了它最大的價值,至少對我來說是最欣慰的時候。然而,對于系統,任何一個改動只應會讓一個測試失敗。換句話說,沒有任何兩個測試的失敗原因是相同的。這說起來容易做起來難,但如果你尊重這個原則,你將會發現,當你重構代碼時,重構測試程序是會容易多了。

  目前就說這些問題??傊?,測試也是程序,它們也要保持高質量。系統中的每個關鍵特征都用一個測試來表現,沒有第二個測試會因為這同一個問題而失敗。

it知識庫你這不是測試驅動開發,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 青青草干免费线观看 | CHINA篮球体育飞机2023 | 4虎影院午夜在线观看 | 中文在线无码高潮潮喷在线 | 无码国产伦一区二区三区视频 | ass女人下部欣赏 | 人妻满熟妇AV无码区国产 | 青青草原免费在线 | 国产亚洲视频在线观看 | 20岁中国男同志china1069 20岁αsrian男同志免费 | 九九热在线视频观看这里只有精品 | 在线欧美免费人成视频 | 久久久久久久尹人综合网亚洲 | 98国产精品人妻无码免费 | 双性精跪趴灌满h室友4p | 色综合欧美色综合七久久 | 日日射夜夜干夜夜插在线播放 | 动漫成年美女黄漫网站 | 两个吃奶一个添下面视频 | 7723日本高清完整版在线观看 | 久色乳综合思思在线视频 | 欧美亚洲高清国产 | 亚洲色欲啪啪久久WWW综合网 | 麻豆传煤网站网址入口在线下载 | 大学生一级毛片免费看 | 久久婷婷色香五月综合激情 | 亚洲第一成年网站视频 | 秋霞伦理电影在2017韩国在线伦 | 亚洲午夜精品A片久久WWW软件 | 91黄色影院 | 成人免费肉动漫无遮网站 | 近亲乱中文字幕 | 背着老婆爆操性感小姨子 | 大地影院免费观看视频 | 国产亚洲欧美在线中文BT天堂网 | 亚洲精品久久YY5099 | 欧美精品亚洲精品日韩专区一 | 国产色婷婷精品人妻蜜桃成熟时 | 最新国自产拍天天更新 | 私人玩物在线观看 | 特黄大片aaaaa毛片 |