您的位置:軟件測試 >> 測試技術(shù) >> 測試精品文章
測試驅(qū)動(dòng)開發(fā)無效,行為驅(qū)動(dòng)開發(fā)才有希望?
作者:Rudolf de Schipper(澤眾軟件原創(chuàng)翻譯) 發(fā)布時(shí)間:[ 2015/4/30 10:25:07 ] 推薦標(biāo)簽:測試驅(qū)動(dòng) 驅(qū)動(dòng)開發(fā) 行為驅(qū)動(dòng) TDD

  Rudolf de Schipper在項(xiàng)目管理、咨詢、QA及軟件開發(fā)上有豐富的經(jīng)驗(yàn)。他有管理大型跨國項(xiàng)目的經(jīng)驗(yàn),喜歡團(tuán)隊(duì)合作。Rudolf 很擅長分析,對公共部門、金融、電子商務(wù)領(lǐng)域很感興趣。他曾在國際型設(shè)計(jì)和開發(fā)中使用過面對對象的技術(shù)。除了IT相關(guān)項(xiàng)目的管理方面,他的興趣還覆蓋程序管理、質(zhì)量管理、業(yè)務(wù)咨詢以及架構(gòu)和開發(fā)。堅(jiān)持跟進(jìn)技術(shù)工作,Rudolf 曾與StratEx團(tuán)隊(duì)合作開發(fā)過StratEx應(yīng)用程序www.stratexapp.com),其架構(gòu)以及所用到的代碼生成工具。在此過程中,他學(xué)會(huì)并體驗(yàn)了許多嚴(yán)峻的軟件設(shè)計(jì)和開發(fā)相關(guān)的困難,包括測試的挑戰(zhàn)。
  在StratEx中,除了開發(fā)StratEx應(yīng)用程序,明顯我們還很重視質(zhì)量和測試應(yīng)用程序。畢竟我們一心要為用戶提供高質(zhì)量。StratEx使用代碼生成的概念來縮短開發(fā)周期,能夠快速實(shí)現(xiàn)新特性和功能。同時(shí)還提供一個(gè)好看統(tǒng)一的用戶界面,因?yàn)槲覀円恢北3执a生成的簡單性。所以創(chuàng)建一個(gè)看起來與眾不同的(生成的)屏幕并不容易。代碼生成概念給了我們可靠的代碼,也減少了測試時(shí)間。不過,除了有效地編碼外,我們還想找到有效測試的方法。(至少從我們的角度看)顯著的解決方案是自動(dòng)化和生成我們的測試。但這聽起來簡單,實(shí)際上卻并非如此。我們要花不少時(shí)間思考佳測試策略該是什么樣的以及該如何實(shí)現(xiàn)它(使用測試自動(dòng)化)。首先我們解決用戶UI測試,使用Selenium。我們手動(dòng)記錄一些測試場景并將它們包含到我們的持續(xù)集成建立流程中去(關(guān)于這點(diǎn)我后面會(huì)講到)。它幫助部署經(jīng)過煙霧測試的構(gòu)建,但是當(dāng)我們對屏幕做出改變時(shí),它完全起不到幫助。這是我們一直以來在做的事,因?yàn)橛辛宋覀兊纳纱a,它變得很簡單,我們需要為用戶提供這種靈活性!當(dāng)然,這一點(diǎn)上我們決不妥協(xié),甚至不能確保我們的代碼被自動(dòng)測試。是的,你沒看錯(cuò)——我們是敢于部署沒有完全經(jīng)過端到端測試的代碼!我們更愿意經(jīng)常且快速地部署,盡管要冒著可能有用戶會(huì)找到bug的風(fēng)險(xiǎn)。

  我們對此仍不滿意,因此我們堅(jiān)持尋找更好的解決方案。接下來要進(jìn)行長期的調(diào)查活動(dòng),以便能夠:找到更好的(更快的)測試,生成測試,改進(jìn)我們手寫代碼的方法,閱讀大量關(guān)于測試的書籍文章。即使到了現(xiàn)在,該調(diào)查還沒結(jié)束,我們?nèi)晕茨艹晒Γㄍ耆┥晌覀兊臏y試。然而這些日子部署一個(gè)新構(gòu)建前我們一直在運(yùn)行自動(dòng)化測試。同時(shí),我們很樂意分享我們遇到的一些關(guān)于各種測試/開發(fā)方法的發(fā)現(xiàn)。
  TDD(測試驅(qū)動(dòng)設(shè)計(jì)/開發(fā))
  TDD方法的基本前提是:你的開發(fā)基本是由若干(單元)測試驅(qū)動(dòng)的。你第一次編寫測試,然后運(yùn)行它們。很明顯,測試失敗了,那你下一步要編寫代碼使測試通過。依我們之見,TDD及其對單元測試的重點(diǎn)關(guān)注是:一個(gè)被高估的概念。這很容易理解,因此很快吸引了熱情的追隨者。其方法的重大差距也是代碼。且這代碼必須得寫,得維護(hù),它還會(huì)含有bug。所以如果我們的整個(gè)項(xiàng)目中開發(fā)員花x%的時(shí)間寫新的(測試)代碼而不重視寫產(chǎn)品代碼,那我們必須問問其中的意義何在了。在我們看來,你們只是在制造更多行的代碼及更多的bug。

上一頁12下一頁
軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd