原創|使用教程|編輯:鄭恭琳|2020-11-20 13:32:15.917|閱讀 320 次
概述:為了幫助團隊更可靠地快速實現質量和安全性,企業可以利用Parasoft Jtest進行Java測試。了解如何利用Jtest來提高Java測試的投資回報率,在提高軟件質量的同時加速軟件交付。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
為了幫助團隊更可靠地快速實現質量和安全性,企業可以利用Parasoft Jtest進行Java測試。了解如何利用Jtest來提高Java測試的投資回報率,在提高軟件質量的同時加速軟件交付。
在當今的數字經濟中,公司必須更快地向市場交付軟件,以跟上消費者的需求。為了在不犧牲質量和安全性的前提下實現這一目標,組織必須能夠有效、徹底、快速地測試軟件代碼更改。但是,完成這種徹底的測試可能會成為瓶頸,給軟件團隊帶來壓力和風險,延遲交付,并對業務產生直接影響。
導致軟件項目延遲的最大因素之一是在開發過程的后期發現的錯誤,這是因為業務對開發團隊施加壓力,要求他們維護進度,這直接影響測試和產品質量。為了幫助解決此問題,開發團隊利用單元測試和靜態代碼分析來在周期的早期階段發現缺陷。但是,這些做法有其自身的缺點,與時間和成本有關,這些缺點可能會導致無法快速獲得質量。
為了解決交付延遲問題,并幫助團隊更可靠地快速實現質量和安全性,企業可以利用Parasoft Jtest來提高Java開發測試的效率。無論是進行新的代碼開發還是維護舊版應用程序,Parasoft Jtest都可以生成、擴充、克隆和變異單元測試,同時還可以優化那些測試的執行,以促進與單元測試相關的時間和成本的顯著改善。“附帶”好處?一套有意義的可維護單元測試。
此外,Parasoft Jtest可以在開發過程中掃描源文件以提高應用程序的安全性和質量。總體而言,這可以通過在軟件開發過程的早期捕獲缺陷來幫助加速交付并提高軟件質量。
為了說明如何在單元測試創建階段增加ROI,假設一家大型金融機構正在實施云遷移策略,并正在開發新的Java應用程序。開發團隊由20位開發人員組成,平均每位開發人員花費100000美元,因此,每年的總開發成本為200萬美元。新應用程序將按季度發布,因此每個版本的開發成本為500000美元。根據我們的研究,平均每個開發團隊在手工編寫單元測試上花費了30%的保守時間,這表明,對于給定的發行版,編寫單元測試使企業花費了大約15萬美元。
(1/4)($2M)(.30) = $150,000
(每季度發布)(開發人員年度費用)(花費的寫作單元測試時間百分比)=寫作單元測試的成本
使用Parasoft Jtest,用戶報告說編寫單元測試可以在一半的時間內完成。除了消除許多與單元測試相關的耗時的手動任務之外,Jtest通過在編寫代碼后立即使用AI自動生成單元測試來完成此任務,以增加代碼覆蓋率。因此,與其將開發時間的30%花費在編寫單元測試上,不如將其花費在15%上,而是將更多的時間集中在測試的業務邏輯部分上。
(1/4)($2M)(.30)(.50) = $75,000
(每季度發布)(每年的開發人員成本)(花費的寫作單元測試時間百分比)(使用Jtest的時間減少百分比)=使用Jtest編寫單元測試的成本
這使編寫單元測試的成本從150000美元降低到75000美元,從而使每個版本的成本節省了75000美元,每年節省了300000美元。
$150,000 – $75,000 = $75,000
原始單元測試成本–帶Jtest的單元測試成本=使用Jtest節省的成本
($75,000)(4) = $300,000
(成本節省)(每年發布的數量)=每年使用Jtest節省的總金額
降低開發成本有助于為企業帶來收益。除了節省成本外,還節省了寶貴的時間。如果公司使用2周的沖刺進行開發(包括10個工作日),則將30%或3天分配給單元測試。對于給定的發行版(3個月),總共有6個sprint(例如:5個用于開發,1個用于最終測試)。使用這些數字,團隊將15天的發布時間用于單元測試。
(5) (10)(.30) = 15 days
(# 開發Sprint的數量)(# Sprint中的天數)(花費的寫作單元測試時間百分比)=# 發布單元測試所花費的天數時間
Jtest將此時間縮短為每個sprint減少一半到1.5天的單元測試,或者將7.5天的發布時間用于團隊的單元測試。
(5) (10)(.30)(.50) = 7.5 days
(# 開發Sprint的次數)(# Sprint中的天數)(花費的寫作單元測試時間百分比)(使用Jtest的Tme減少百分比)=# 使用Jtest發行單元測試的花費天數
當您在緊鑼密鼓地擊敗競爭對手進入市場時,將業務節省7.5天非常有價值。
15 – 7.5 = 7.5 days
原始耗時單元測試–w/Jtest的耗時單元測試=通過Jtest節省的時間
值得注意的是,在此示例中,保守的30%用于分配用于手動編寫單元測試的時間,但是通常這個數字要高得多,取決于組織的單元測試實踐,該數字會高達50%。這些組織將通過Parasoft Jtest節省更多的時間和成本。
現在,假設同一組織正在構建其新應用程序,并且這樣做,它們將生成越來越多的單元測試,從需要花費幾秒鐘才能運行的單獨(隔離)單元測試到社交(集成級別)單元測試。這需要更長的時間才能運行。他們的完整單元測試套件執行時間增加到2小時,并且他們的總體開發構建時間也受到了影響,因為軟件開發團隊要等待2個小時才能獲得有關代碼更改的反饋,因此要花很多時間。該組織遵循敏捷方法,因此他們每天要構建多次以向其軟件團隊提供頻繁的反饋,但是由于2小時的單元測試執行時間,他們一天只能執行3次構建,相當于6個小時的整體單元每天測試執行時間,這可能會導致開發過程效率低下。
為了縮短發布周期,團隊可以使用Parasoft Jtest優化單元測試的執行。Jtest減少了使用支持AI的測試自動化執行單元測試的時間,它基于已更改的代碼執行優化的單元測試集,而不是運行全套測試。這項優化會在簽入代碼之前以及在CI生成期間在開發人員的IDE中進行,而完整的測試套件將繼續每晚執行。通過優化運行哪些測試,可以大大縮短總體構建時間,并可以更快地向軟件團隊反饋。而且組織每天可以獲得更多的構建,這可以在一天的活躍時間內優化團隊的生產力,從而縮短交付時間。利用Jtest的測試技術,可以節省時間和成本。
讓我們繼續在這種情況下使用同一組織,并且在測試過程中,他們發現了多個后期周期缺陷。使用卡內基梅隆大學軟件工程學院“組成有效的軟件安全保證工作流程”中的“每缺陷成本”度量標準,發現和修復的早期周期平均缺陷成本為1個小時,與發現的缺陷相反在后期周期中,成本往往會高出7倍,7個小時。根據100000美元的平均薪水,盡早發現并修復缺陷的成本約為48美元,而發現并修復后期缺陷的成本約為336美元。該公司確定了20個后期缺陷,共計6720美元,需要140個開發小時(約18個工作日)來解決。有了這些數據,就可以清楚地看到后期缺陷對發布的時間和成本的影響。
($48)(7)(20) = $6,720
(每小時開發人員成本)(# 查找和修復后期缺陷的小時數)(# 后期缺陷數)=缺陷修復總成本
[(7)(20)] / 8 = ~18個工作日
[(# 查找和修復后期周期缺陷的小時數)(# 后期周期缺陷的數目)] /(# 典型工作日中的小時數)=缺陷修復總時間
為了減少出現在后期的缺陷數量,Parasoft Jtest使團隊能夠進行自動化的靜態代碼分析和安全測試,并提供1000多個規則,以在開發時(早期)識別出代碼中的潛在漏洞和問題。如果Jtest保守地較早地檢測到25%的后期缺陷,導致5個早期缺陷并留下15個晚期周期,那么這將花費5280美元和110個開發小時(?14個工作日)來發現和修復早期和晚期。循環缺陷。這樣可以將缺陷修復的時間和成本降低大約25%。
($48)(1)(5) = $240
(每小時開發人員成本)(# 查找和修復早期周期缺陷的小時數)(# 早期周期缺陷的數量)=早期周期缺陷修復成本
($48)(7)(15) = $5,040
(每小時開發人員成本)(# 查找和修復后期缺陷的小時數)(# 后期缺陷的數目)=后期缺陷修復成本
$240 + $5,040 = $5,280
早期修復成本+晚期修復成本=使用Jtest的總缺陷修復成本
($6,720 – $5,040)/$6,720 =使用Jtest節省約25%的成本
(原始修復成本–帶Jtest的修復成本)/原始修復成本=使用Jtest節省的成本百分比
[(1)(5)] / 8 =?1天
(查找和修復早期周期缺陷的小時數)(早期周期缺陷的數目)/(典型工作日中的小時數)=早期周期缺陷修復時間
[(1)(5)] / 8 = ~1 天
(# 查找和修復后期缺陷的小時數)(# 后期缺陷的數目)/(# 典型工作日中的小時數)=后期缺陷修復時間
1 + 13 = 14 days
早期修復時間+晚期修復時間=總缺陷修復時間
(18 – 14)/18 =使用Jtest可以節省約22%的時間
(原始修復時間–w/Jtest的修復時間)/原始修復時間=使用Jtest節省的時間百分比
為了進一步左移問題的識別,Jtest使用戶可以在其IDE中“即時”執行或在開發完成時進行連續分析。當引入缺陷時,這使開發人員可以在他們已經在積極使用代碼的情況下修復問題。這進一步減少了與缺陷修復相關的時間和成本,并大大提高了速度質量。
Parasoft Jtest是快速交付質量的關鍵推動因素。開發人員可以通過更好的單元測試和自動靜態代碼分析來減少后期缺陷,從而使他們能夠將更多的時間投入到業務的新功能開發中,并且這些開發人員還可以從即時反饋中受益,能夠快速識別他們的代碼更改是否破壞了應用程序的功能并迅速解決了問題。Parasoft Jtest使開發團隊能夠敏捷,交付速度更快而又不犧牲質量,從而使業務成功。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn