原創(chuàng)|使用教程|編輯:鄭恭琳|2020-11-27 13:11:00.880|閱讀 285 次
概述:通過使用Parasoft Jtest將測(cè)試影響分析用于單元測(cè)試,軟件開發(fā)團(tuán)隊(duì)可以集中精力進(jìn)行測(cè)試,并通過IDE或CI流程真正加速其開發(fā)流程。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
您測(cè)試得越快,發(fā)布就越快。但是,您不必等待每晚/每天的構(gòu)建來運(yùn)行全套的單元測(cè)試,以驗(yàn)證代碼更改的影響。相反,您可以立即洞悉受代碼更改影響的測(cè)試,并對(duì)簽入更有信心。
多年來,單元測(cè)試一直是行業(yè)最佳實(shí)踐,并且隨著開發(fā)團(tuán)隊(duì)建立其測(cè)試套件,他們變得越來越大。隨著測(cè)試擴(kuò)展到集成或組件級(jí)別的測(cè)試,它們將花費(fèi)更長(zhǎng)的時(shí)間。隨著諸如TDD之類的單元測(cè)試新趨勢(shì)的發(fā)展,這些測(cè)試套件將變得比以前更大,因?yàn)樗写a都依賴于測(cè)試,并且更多依賴于測(cè)試。
擁有大量單元測(cè)試基礎(chǔ)可以成為測(cè)試的良好基礎(chǔ),但這可能會(huì)對(duì)測(cè)試執(zhí)行時(shí)間產(chǎn)生重大影響,尤其是在單元測(cè)試擴(kuò)展到集成/組件級(jí)測(cè)試時(shí)。因此,知道要測(cè)試什么的關(guān)鍵在于了解每個(gè)代碼更改的確切影響,需要運(yùn)行哪些測(cè)試以及可能需要哪些新測(cè)試。
計(jì)算代碼覆蓋率是確定要測(cè)試的內(nèi)容的一個(gè)方面,但僅憑此還不夠。當(dāng)為每個(gè)測(cè)試計(jì)算代碼覆蓋率,然后在逐個(gè)構(gòu)建的基礎(chǔ)上將其與代碼更改相關(guān)聯(lián)時(shí),真正的魔力就會(huì)發(fā)生。使用這種方法可以為我們提供測(cè)試影響分析,在此過程中,我們可以準(zhǔn)確地確定執(zhí)行哪個(gè)測(cè)試以驗(yàn)證代碼更改。通過使用Parasoft Jtest將測(cè)試影響分析用于單元測(cè)試,軟件開發(fā)團(tuán)隊(duì)可以集中精力進(jìn)行測(cè)試,并通過IDE或CI流程真正加速其開發(fā)流程。
盡早發(fā)現(xiàn)并修復(fù)錯(cuò)誤是進(jìn)行測(cè)試影響分析的主要好處。通過將測(cè)試影響分析的結(jié)果直接集成到IDE中,開發(fā)人員可以無縫地利用其在工作流程中的優(yōu)勢(shì),將測(cè)試工作準(zhǔn)確地集中在正確的位置,并確保對(duì)代碼更改進(jìn)行完整的測(cè)試,包括對(duì)相關(guān)代碼的間接影響。
盡管盡早發(fā)現(xiàn)并修復(fù)錯(cuò)誤是主要目標(biāo),但使開發(fā)人員觸手可及的測(cè)試影響分析結(jié)果還有其他優(yōu)點(diǎn),包括:
	
	
將測(cè)試影響分析與CI流程相結(jié)合時(shí),可以節(jié)省時(shí)間,并且可以將開發(fā)團(tuán)隊(duì)的工作重點(diǎn)放在確保質(zhì)量所需的工作上。在開發(fā)和構(gòu)建時(shí)進(jìn)行優(yōu)化對(duì)于處理變更時(shí)實(shí)現(xiàn)敏捷目標(biāo)至關(guān)重要。
與在軟件開發(fā)生命周期中較晚發(fā)現(xiàn)錯(cuò)誤相比,早發(fā)現(xiàn)錯(cuò)誤更好且更便宜,因?yàn)檫@可能會(huì)導(dǎo)致重大的計(jì)劃延誤。開發(fā)人員通常不知道要運(yùn)行哪些測(cè)試,因此他們要么不運(yùn)行任何測(cè)試,要么運(yùn)行太少。在這種情況下,他們依賴于構(gòu)建以運(yùn)行整個(gè)測(cè)試套件,因此開發(fā)團(tuán)隊(duì)在等待構(gòu)建過程中有關(guān)其更改的反饋/驗(yàn)證時(shí)處于閑置狀態(tài)。通過利用測(cè)試影響分析,開發(fā)團(tuán)隊(duì)甚至可以在將代碼提交到版本中以驗(yàn)證更改之前找到并運(yùn)行適當(dāng)?shù)臏y(cè)試。
測(cè)試影響分析還意味著開發(fā)人員可以更快地獲得有關(guān)代碼更改的反饋,這些更改會(huì)導(dǎo)致CI流程導(dǎo)致測(cè)試失敗。開發(fā)經(jīng)理希望他們的團(tuán)隊(duì)在簽入代碼之前運(yùn)行測(cè)試,理想情況下,但是通常沒有完成。此外,他們希望確保團(tuán)隊(duì)在檢入代碼后盡快知道代碼是否通過了任何測(cè)試。因此,對(duì)于測(cè)試影響分析功能而言,跨越CI流程以及開發(fā)人員的桌面非常重要。
那么在實(shí)踐中這是什么樣的呢?在IDE中,當(dāng)開發(fā)人員正在編寫代碼時(shí),Jtest的“受影響的單元測(cè)試”視圖提供了一個(gè)(動(dòng)態(tài)發(fā)展中的)列表,其中需要運(yùn)行這些測(cè)試才能執(zhí)行在本地更改的代碼。然后,開發(fā)人員只需要做的就是右鍵單擊受影響的測(cè)試并執(zhí)行它,或者簡(jiǎn)單地運(yùn)行所有受影響的測(cè)試。
	
	
Jtest跟蹤已運(yùn)行的受影響的測(cè)試,并清楚顯示哪些已通過和哪些失敗,從而使開發(fā)人員可以輕松確定哪些測(cè)試仍需要運(yùn)行,或者哪些測(cè)試已失敗并需要解決。一旦所有測(cè)試都已運(yùn)行并通過,開發(fā)人員將對(duì)代碼更改更有信心,并可以安全地提交其代碼并繼續(xù)進(jìn)行下一個(gè)開發(fā)任務(wù)。
專門進(jìn)行代碼測(cè)試反饋的工作流旨在提高開發(fā)人員桌面的工作效率,使用戶可以輕松地識(shí)別并僅運(yùn)行驗(yàn)證本地代碼更改所需的測(cè)試。在直接部署到生產(chǎn)的模型中,這可以防止將錯(cuò)誤分發(fā)給最終用戶。當(dāng)一個(gè)項(xiàng)目涉及多個(gè)團(tuán)隊(duì)時(shí),這可以防止其他團(tuán)隊(duì)浪費(fèi)時(shí)間進(jìn)行故障排除和解決問題,而如果在提交代碼之前進(jìn)行了適當(dāng)?shù)臏y(cè)試,這些問題可以避免。
如果您無法輕松將其集成到現(xiàn)有工具鏈中,則這些工具將無法使用。Parasoft Jtest支持Git或SVN源代碼管理以及其他源代碼控制系統(tǒng)中的項(xiàng)目。Eclipse和IntelliJ都存在IDE集成。 Jtest提供了Maven和Gradle插件,這些插件可以集成到CI構(gòu)建作業(yè)中,該CI運(yùn)行作業(yè)作為Maven或Gradle構(gòu)建的一部分運(yùn)行測(cè)試。
通過確定自基線構(gòu)建以來哪些代碼已更改(通常被配置為最近一次夜間構(gòu)建),然后確定需要運(yùn)行哪些測(cè)試以執(zhí)行該代碼,然后配置這些插件,可以將它們完全自動(dòng)化以測(cè)試套件只是那部分測(cè)試。這使團(tuán)隊(duì)可以設(shè)置僅基于最新代碼更改運(yùn)行測(cè)試的CI作業(yè),從而使他們可以將運(yùn)行CI作業(yè)所需的時(shí)間從數(shù)小時(shí)縮短至幾分鐘。
作為最佳實(shí)踐,團(tuán)隊(duì)可以每晚運(yùn)行全套單元測(cè)試,并在日常(臨時(shí))構(gòu)建中利用測(cè)試影響分析。這使得Parasoft Jtest對(duì)于具有長(zhǎng)期運(yùn)行的測(cè)試套件的團(tuán)隊(duì)特別有用,他們可以在提交代碼后幾分鐘內(nèi)從相關(guān)測(cè)試中獲取結(jié)果,從而獲得真實(shí)的CI。如果無法執(zhí)行此操作,則錯(cuò)誤的代碼更改可能會(huì)導(dǎo)致無法快速捕獲到的回歸,從而可能潛入生產(chǎn)環(huán)境或干擾其他團(tuán)隊(duì)成員的工作。
通過將資源準(zhǔn)確地集中在需要測(cè)試的內(nèi)容上,開發(fā)團(tuán)隊(duì)可以快速有效地運(yùn)行測(cè)試,以不斷地驗(yàn)證他們要檢入的代碼——在漏洞和安全漏洞未完全生成之前就將它們捕獲。
	
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@ke049m.cn