翻譯|行業(yè)資訊|編輯:李顯亮|2021-05-12 10:12:50.033|閱讀 229 次
概述:團(tuán)隊面臨的最大難題是如何提高測試效率,同時在不影響進(jìn)度和成本的情況下滿足安全、安保和質(zhì)量需求。使用更智能的測試自動化來優(yōu)化測試,消除了測試創(chuàng)建和執(zhí)行中的問題。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
由于在嵌入式目標(biāo)上啟動和觀察測試的必要性和復(fù)雜性,嵌入式軟件的自動化測試具有挑戰(zhàn)性。此外,軟件團(tuán)隊通常對目標(biāo)硬件的訪問權(quán)限有限。
軟件測試自動化對于從主機(jī)開發(fā)系統(tǒng)到目標(biāo)系統(tǒng)的嵌入式測試的持續(xù)運(yùn)行至關(guān)重要。測試嵌入式軟件特別耗時。自動化回歸測試套件節(jié)省了大量時間和成本。
根據(jù)需要,從目標(biāo)系統(tǒng)中收集測試結(jié)果和代碼覆蓋率數(shù)據(jù)對于驗證和標(biāo)準(zhǔn)符合性是至關(guān)重要的。而數(shù)據(jù)收集在測試執(zhí)行中是至關(guān)重要的。它可以通過記錄和維護(hù)測試用例、測試結(jié)果、源代碼和需求之間的可追溯性來完成。
集成測試解決方案,如Parasoft C/C++test,提供了一個優(yōu)化的測試線束,為二進(jìn)制足跡采取最小的額外開銷,并以源代碼的形式提供,如果需要平臺特定的修改,可以在這里進(jìn)行定制。
Parasoft的c/c++軟件開發(fā)測試解決方案支持將回歸測試基線創(chuàng)建為一個有組織的測試集合,并自動驗證所有結(jié)果。這些測試定期自動運(yùn)行,以驗證代碼修改是否改變或破壞了回歸測試中捕獲的功能。
如果引入任何變更,這些測試用例將無法提醒團(tuán)隊注意問題。在隨后的測試中,parasoft c++ test如果檢測到初始測試中捕獲的行為發(fā)生變化,將報告任務(wù)。
自動化很重要,但它需要做的不僅僅是保持現(xiàn)狀。為了提高軟件的安全性、安全性和質(zhì)量,在不進(jìn)一步減緩進(jìn)度的情況下,需要在配置項/光盤管道中進(jìn)行更多的測試。
團(tuán)隊面臨的最大難題是如何提高測試效率,同時在不影響進(jìn)度和成本的情況下滿足安全、安保和質(zhì)量需求。不可避免的是,即使是簡單的測試自動化(測試執(zhí)行和結(jié)果),也需要妥協(xié)來保持測試時間的合理。
簡單的解決方案是憑猜測選擇軟件的哪些部分作為完整的系統(tǒng)測試套件進(jìn)行測試,這既耗時又昂貴。使用更智能的測試自動化來優(yōu)化測試,消除了測試創(chuàng)建和執(zhí)行中的問題。
一般來說,代碼覆蓋率是對自動化測試運(yùn)行時執(zhí)行的產(chǎn)品代碼量的度量。通過運(yùn)行一套測試并查看代碼覆蓋率數(shù)據(jù),可以大致了解應(yīng)用程序中有多少內(nèi)容正在被測試。
收集和分析代碼覆蓋率度量是安全關(guān)鍵嵌入式軟件開發(fā)的一個重要方面。代碼覆蓋率衡量測試用例和執(zhí)行測試的完成情況。它提供了驗證完成的證據(jù),至少按照軟件設(shè)計的規(guī)定。
高級單元測試自動化工具,比如Parasoft C/++test,提供了所有這些代碼覆蓋度量等等。C/c++ test自動化了主機(jī)和目標(biāo)測試的數(shù)據(jù)收集,并隨著時間的推移積累測試覆蓋歷史。這個代碼覆蓋歷史可以跨越單元、集成和系統(tǒng)測試,以確保覆蓋在測試的所有級別都是完整和可追蹤的。
生產(chǎn)性單元測試的創(chuàng)建一直是一個挑戰(zhàn)。功能安全標(biāo)準(zhǔn)合規(guī)性要求高質(zhì)量的軟件,這推動了對影響和產(chǎn)生高代碼覆蓋率統(tǒng)計的測試套件的需求。
團(tuán)隊需要單元測試用例來幫助他們實現(xiàn)他們的覆蓋目標(biāo),這些目標(biāo)甚至在安全關(guān)鍵軟件領(lǐng)域之外也很重要。任何未被至少一個測試覆蓋的代碼都是未經(jīng)測試的!
團(tuán)隊可以使用覆蓋率顧問。Parasoft發(fā)現(xiàn)了如何使用高級靜態(tài)代碼分析(數(shù)據(jù)和控制流分析)來找到執(zhí)行特定未覆蓋代碼行所需的輸入?yún)?shù)值。
該分析計算執(zhí)行特定代碼行所需的函數(shù)參數(shù)、全局變量和外部函數(shù)調(diào)用的前提條件。覆蓋率顧問為用戶選擇的代碼行提供一組解決方案。呈現(xiàn)的值用于創(chuàng)建新的單元測試用例。這一功能提高了開發(fā)人員處理單元測試用例的生產(chǎn)率,從而提高了代碼覆蓋率。
為了加速連續(xù)管道中的測試,需要基于每個構(gòu)建的智能測試執(zhí)行來減少需要執(zhí)行的測試集,以解決每個新迭代引入的風(fēng)險。測試影響分析提供的分析是使測試只關(guān)注絕對需要測試的內(nèi)容,而不是使用強(qiáng)制方法的關(guān)鍵。
Parasoft C/C++test中的智能測試執(zhí)行通過用于配置項系統(tǒng)(Jenkins、TeamCity、Bambean等)的插件進(jìn)行擴(kuò)展,以獲得高級功能,幫助軟件開發(fā)組織減少與運(yùn)行連續(xù)構(gòu)建相關(guān)的瓶頸。在具有專用插件的集成開發(fā)環(huán)境中也可以獲得相同的功能,這些插件通過一個REST應(yīng)用編程接口訪問一個集中的覆蓋映像,并確定需要在集成開發(fā)環(huán)境中本地執(zhí)行哪些測試來驗證所有更改的代碼。
智能測試執(zhí)行使用測試影響分析來跟蹤針對應(yīng)用程序的手動測試的執(zhí)行,以及與這些測試相關(guān)聯(lián)的、捕獲的代碼覆蓋信息。類似的技術(shù)用于自動化測試。這種分析指出了需要執(zhí)行哪些手動測試來訪問每一個新版本所提供的已更改的功能。因此,在開發(fā)人員和測試人員的本地IDEs中,智能測試執(zhí)行是至關(guān)重要的。它使他們能夠?qū)y試集中在需要的地方,消除猜測和額外的“以防萬一”工作。
持續(xù)集成和持續(xù)交付在嵌入式開發(fā)中很常見。將一個瀑布式的過程移植到CI/CD和敏捷開發(fā)中,在降低風(fēng)險、提高質(zhì)量和安全性方面是有回報的。然而,測試仍然是嵌入式系統(tǒng)采用CI/CD工作流的一個障礙,因為它們在自動化測試方面面臨獨(dú)特的挑戰(zhàn)。通過智能測試執(zhí)行消除這些障礙,并在提高代碼覆蓋率的同時優(yōu)化測試,是成功采用CI/CD的關(guān)鍵。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn