网站首页
教育杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
医学杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
经济杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
金融杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
管理杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
科技杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
工业杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
SCI杂志
中科院1区 中科院2区 中科院3区 中科院4区
全部期刊
公務員期刊網(wǎng) 論文中心 正文

軟件開發(fā)中測試驅動開發(fā)的運用

前言:想要寫出一篇引人入勝的文章?我們特意為您整理了軟件開發(fā)中測試驅動開發(fā)的運用范文,希望能給你帶來靈感和參考,敬請閱讀。

軟件開發(fā)中測試驅動開發(fā)的運用

摘要:在極限編程中極具特色的一個原則就是測試驅動開發(fā),作為一種新的思潮正在被越來越多的人所接受,它在軟件開發(fā)過程中所表現(xiàn)出來的積極作用是不言而喻的。測試驅動開發(fā)的方法能夠在保證功能測試的前提下,也能夠成為設計的一部分。整個開發(fā)過程的驅動力就是以測試驅動開發(fā)為基礎,能夠在很大程度上提高代碼質量,改善開發(fā)設計過程,從而在根本上提高了產(chǎn)品的質量。

關鍵詞:測試驅動開發(fā);軟件開發(fā);積極作用

隨著時代的發(fā)展,計算機軟件的發(fā)展變得尤為迅速,與之對應的問題是用戶對軟件的質量要求也越來越高。為了能夠及時交付給用戶一個滿意的軟件,軟件開發(fā)人員往往需要投入到高效的軟件開發(fā)過程。然而現(xiàn)實情況則是傳統(tǒng)的軟件工程方法已經(jīng)變得不再適用于當今的軟件開發(fā),而最近剛剛興起的一些軟件開發(fā)過程的技術正好值得我們借鑒和學習。其中就包括我們今天要討論的測試驅動開發(fā),它作為一個最基礎的技術能夠提供給我們一些相對高效的軟件過程開發(fā)方法。

1測試驅動開發(fā)的相關環(huán)節(jié)

1.1原理和過程測試

驅動開發(fā)的原理就是應該在明確要開發(fā)某個功能后,進行構思并決定如何設計測試代碼的過程,從而根據(jù)用戶的需求編寫出功能代碼滿足這些測試用例。接下來可以循環(huán)的進行添加其他功能,最后能夠完成全部功能的開發(fā)。其中的基本過程包括:明確當前需要完成的功能;需要在保證速度的前提下編寫測試用例;編寫對應的功能代碼;保證測試能夠通過的方法就是重構代碼。我們通常在運用了測試框架的前提下,進行組織所有的測試用例,從而保證了整個測試過程的高效和便捷。

1.2原則要求

為了保證能分清需要檢測的各類代碼,不同代碼的的測試之間應該相互隔離,為了避免去考慮許多的無關細節(jié)而增加復雜度,所以我們在相關代碼的測試中一般只考慮該代碼的測試,而不去考慮它的現(xiàn)實細節(jié)。在實際情況中,經(jīng)常出現(xiàn)的功能點需要我們?nèi)y試,在任意階段中如果我們想要添加功能需求問題時,我們能夠把相關功能點添加到測試列表的操作方法從而避免不必要的麻煩,從而不斷地完成對應的測試實例、重構和功能代碼。這是為了避免疏漏,同時也是為了避免干擾當前正在進行的工作。在完成某個功能、某個類別的時候,首先我們需要編寫測試代碼,考慮具體該如何測試和使用,接下來再進行設計和編碼。在這個過程中,我們需要正確編寫對應功能代碼判斷用的語句,隨后編寫對應的輔助語句。

1.3測試技術

如果我們采用傳統(tǒng)的檢測方式,這無疑會在我們的軟件開發(fā)中造成開發(fā)速度緩慢等缺點,而我們需要認清的一點就是測試驅動開發(fā)中的測試并不是作為一種負擔,而是一種為了幫助我們減輕繁重工作量的有效方法。在針對如何選擇一個合適的時間來停止編寫測試用例的問題上,我們應該根據(jù)往常的工作經(jīng)驗來進行,例如說針對一些功能復雜并且具有核心功能的代碼來說應該編寫更細致、全面的測試用例。靜態(tài)的標準也不適用于測試驅動開發(fā)的測試范圍,在實際情況下是能夠隨著時間的改變而改變。

2軟件開發(fā)為何要應用測試驅動開發(fā)

2.1提高代碼質量

測試驅動開發(fā)區(qū)別于之前的先編碼后測試的開發(fā)方式,它的操作過程恰恰相反,它推動整個開發(fā)的進行是通過測試來實現(xiàn)的。在某些時候,軟件工程開發(fā)工程中的需求是極難描述清楚的,當然我們這里說的需求當然不只是指用戶的需求,代碼的使用需求才是我們需要考慮的需求范圍。如果我們在軟件開發(fā)后期還要對某個類或者函數(shù)的接口進行拓展或者修改,顯然這對任何一個開發(fā)人員來說都是不能夠接受的。至于為什么會發(fā)生這樣的事情,從本意上來說就是因為沒有精確地對這部分代碼作出描述。而當我們需要添加某項新功能時,也不應該著急寫程序代碼,這時候就體現(xiàn)出了先寫好測試用例的重要性。

2.2改善設計方式

測試驅動開發(fā)的優(yōu)勢則體現(xiàn)在實現(xiàn)軟件設計的過程中,傳統(tǒng)的軟件工程所體現(xiàn)出來的設計思想跟測試驅動開發(fā)的思想是不能夠比較的,傳統(tǒng)設計方法中的死板的原則在測試驅動開發(fā)面前是不值得一提的,在某些程度還弱化了了全面細致的設計。在測試驅動開發(fā)過程中我們應該對現(xiàn)有的需求做出簡單的設計,而不是對需求做出詳盡的解釋??瓷先ズ孟駥υO計進行了簡化,也削弱了開發(fā)的依據(jù),實際上卻是進一步明確了軟件開發(fā)的時候應該更注重眼前的問題,只有這樣才能使做出的軟件更符合客戶的需求。因為設計是一個相持以往的過程,需求文檔的體現(xiàn)也在測試用例中表現(xiàn)得非常充分。

2.3革新傳統(tǒng)的軟件開發(fā)

以人為本的思想是測試驅動開發(fā)的方法。人類活動都秉持著高度的目的性,建立一個心里的標準并竭盡全力去達成這個標準會具有重要的心理作用。例如在我們平時的測試過程中,有著不同目的的測試軟件開發(fā)將會帶來不一樣的操作結果。比如說將證明程序中沒有我們需要查找的錯誤作為我們的最終目的,那大腦中的潛意識里就會指導著我們朝這個思路去做,所以在編寫測試的過程中,我們就潛意識地選擇了一些不會使整個軟件程序出錯的實驗數(shù)據(jù);相反,如果我們逆向思維去選擇那些容易發(fā)現(xiàn)程序錯誤的測試數(shù)據(jù)去證明程序中的漏洞,那結果一定就會不同了。對比之下,我們在以尋找錯誤為最終目的的前提下做出的程序檢測質量遠遠高過以不找錯誤為最終目的的思維方式。測試驅動開發(fā)改變了以往的破壞性思想,測試在先,編碼在后的方法則是從人性的角度出發(fā)。

3結語

總而言之,測試驅動開發(fā)的開發(fā)方法就是“測試在前,編碼在后”。人性特點作為測試驅動開發(fā)側重考慮的因素,在一定程度上極大的提高了軟件的質量和開發(fā)速度。這是一種完全的軟件開發(fā)革新,也從根本上改變了傳統(tǒng)的開發(fā)軟件思想。推廣測試驅動開發(fā)思想使得越來越多的軟件企業(yè)開始注意到這種獨具一格的軟件測試方法,間接或者是直接采用了這種方法。測試驅動開發(fā)正在軟件開發(fā)領域發(fā)光發(fā)熱,我們也相信在不久的將來就能解決用戶對軟件質量不滿的問題。

參考文獻

[1]嚴國武.淺談驗收測試驅動開發(fā)[J].電子世界,2014(08).

[2]林勇.淺談測試驅動開發(fā)[J].中國金融電腦,2012(04).

[3]唐金鵬,李玲琳.測試驅動開發(fā)應用研究[J].企業(yè)技術開發(fā),2012(05).

[4]李瑛,彭軍.測試驅動開發(fā)在系統(tǒng)中的設計實現(xiàn)及效能分析[J].計算機與數(shù)字工程,2012(01).

作者:陳迪舸 單位:成都工業(yè)職業(yè)技術學院

免责声明

本站为第三方开放式学习交流平台,所有内容均为用户上传,仅供参考,不代表本站立场。若内容不实请联系在线客服删除,服务时间:8:00~21:00。

AI写作,高效原创

在线指导,快速准确,满意为止

立即体验
文秘服务 AI帮写作 润色服务 论文发表