色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

解決提升覆蓋率難題-使用C/C++test覆蓋率指導助手

麥克泰技術 ? 來源:麥克泰技術 ? 2023-03-31 13:57 ? 次閱讀

在構建關鍵系統(tǒng)時,將代碼覆蓋率結構化是必須的,也是非常重要的。這篇文章闡述了Parasoft C/C++test如何通過覆蓋率指導助手等自動化生產(chǎn)力功能更好地幫助測試團隊。

軟件測試是軟件開發(fā)不可分割的一部分。每個開發(fā)和執(zhí)行代碼的行業(yè)都可以從使用結構代碼覆蓋率測試工具中受益。這些工具在安全關鍵型應用的嵌入式開發(fā)行業(yè)中特別有用,在這些行業(yè)中,軟件系統(tǒng)不能出現(xiàn)故障,否則就會涉及生命危險。Parasoft C/C++test的覆蓋率指導助手能夠幫助用戶對難以捉摸又耗時的代碼創(chuàng)建測試用例。

代碼覆蓋率是一個重要且必要的條件

我們在嵌入式安全和安全關鍵系統(tǒng)中將代碼提升到100%覆蓋率有多種目的。其中最主要的目是符合DO-178C、IEC 62304等流程標準中定義的驗證和確認(Verification & Validation)要求。

優(yōu)點

代碼覆蓋率提供的價值是對V&V(Verification & Validation)過程的提升,它可以幫助我們清除代碼中的缺陷,確保每行代碼都已執(zhí)行,從而滿足團隊或者認證的要求。這可以大大提高團隊代碼質量的安全性和可靠性。

同樣,如果我們執(zhí)行了所有的測試用例,而只獲得了60%的覆蓋率,那么很明顯我們沒有創(chuàng)建足夠的測試用例。因此,隱藏的缺陷可能潛伏在這些未測試的部分。

另一個問題是“死代碼”。這意味著這些代碼永遠不會被執(zhí)行,因為沒有條件能夠支持這些代碼被執(zhí)行。這種情況可能發(fā)生在實現(xiàn)了某個特性/功能,但在某種條件下,這個功能需求被刪除了。如果不完全刪除這些相關的代碼,就可能會導致死代碼這種情況。在函數(shù)或方法中查找死代碼的同時,還可以突出必須解決的壞代碼。

如何滿足您的代碼覆蓋率要求

您可以通過下面的測試方法或它們的組合方法來實現(xiàn)代碼的高覆蓋率:

單元測試

集成測試

系統(tǒng)測試

下面是Parasoft支持度較高的兩種方法:

1.系統(tǒng)測試和單元測試的組合。首先,檢測代碼并執(zhí)行所有的系統(tǒng)測試用例,這將會產(chǎn)生比較高的覆蓋率指標。最后,使用單元測試方法來提升剩余未覆蓋代碼的覆蓋率。

2.利用單元測試實現(xiàn)100%代碼覆蓋率。這種方法很直接。用戶創(chuàng)建單元級的測試用例,以確保對每個功能/方法被覆蓋。

代碼覆蓋率指標

覆蓋率指標有非常多種類。具體應用哪種覆蓋率指標取決于IEC 61508中定義的安全完整性等級(SIL)。另一種情況是DO-178B/C的設計保證級別(DAL)對覆蓋率指標的不同要求。對于嵌入式系統(tǒng),我們可能常用到的覆蓋率指標是語句、分支、修改條件/判定(MC/DC)覆蓋率。其中,對于那些最嚴格的要求,會包括匯編代碼的覆蓋率。Parasoft支持收集所有這些覆蓋率指標,包括其他行業(yè)名稱不同的覆蓋率指標種類,比如塊、調(diào)用、函數(shù)、路徑、判定覆蓋率等。

a0492880-cf77-11ed-bfe3-dac502259ad0.png

圖一:指標和趨勢

自動化流程

Parasoft C/C++test的“一鍵獲取覆蓋率”功能在對減輕團隊工作任務和減少成本方面,有著巨大作用。首先是自動生成測試用例,我們只需要單擊一下測試配置,C/C++test即可分析代碼并且自動生成智能的單元測試用例。然后我們可以執(zhí)行這些單元測試用例。根據(jù)不同代碼的大小和復雜性,團隊基本上可以達到80%左右的覆蓋率。

對于復雜的代碼,總是有一些結構復雜的代碼語句,要覆蓋這些語句并且獲取覆蓋率是非常困難的。對于這些結構復雜的代碼,我們可能需要根據(jù)不同的路徑或條件情況排列,設計很多組測試用例,才有可能覆蓋這些代碼,這需要花費我們大量的時間和精力。但是我們現(xiàn)在就有一個完美的解決方案,那就是Parasoft C/C++test Coverage Advisor。Parasoft C/C++test覆蓋率指導助手,可以幫我們分析結構或條件復雜的代碼,提供給我們多組測試用例,使這些代碼更容易被覆蓋。

如何在Coverage Advisor中獲取覆蓋率

在編輯器中,右鍵單擊您想要覆蓋的代碼行,然后選擇Parasoft->Show in Coverage Advisor。

a0702390-cf77-11ed-bfe3-dac502259ad0.png

圖二:在Coverage Advisor菜單中顯示

下圖展示了為用戶提供的多種測試用例,前置條件字段表示:

mainSensorSignal和coSensorSignal的范圍和輸入值

外部調(diào)用的預期輸出

在使用這些設置的參數(shù)值和外部調(diào)用的樁函數(shù)創(chuàng)建單元測試用例時,用戶將獲得所選行的覆蓋率。

a08cd12a-cf77-11ed-bfe3-dac502259ad0.png

圖三:Parasoft C/C++test2020.2 Coverage Advisor行覆蓋分析反饋

總結

在構建嵌入式安全和安全關鍵型軟件系統(tǒng)時,代碼結構覆蓋率是必須的。同時,我們可以將對應的測試用例和需求關聯(lián)上,這樣可以確保:

創(chuàng)建了足夠的測試用例來測試軟件

沒有任何死代碼

每一行代碼都經(jīng)過合規(guī)性和認證需求的檢查

Parasoft C/C++test是一個完整的軟件測試解決方案,它為團隊提供了測試方法功能和自動化生產(chǎn)能力,比如覆蓋率覆蓋率指導助手。利用這個功能,開發(fā)人員可以快速實現(xiàn)他們的代碼覆蓋率目標。相應地,管理者可以加快產(chǎn)品上市時間、保障審計和簡化產(chǎn)品認證。在向市場輸出高質量軟件的同時,能夠降低成本投入。

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式
    +關注

    關注

    5082

    文章

    19111

    瀏覽量

    304845
  • C++
    C++
    +關注

    關注

    22

    文章

    2108

    瀏覽量

    73624
  • 代碼
    +關注

    關注

    30

    文章

    4780

    瀏覽量

    68531

原文標題:解決提升覆蓋率難題-使用C/C++test覆蓋率指導助手

文章出處:【微信號:麥克泰技術,微信公眾號:麥克泰技術】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    怎么用Vivado做覆蓋率分析

    在做仿真的時候往往會去做代碼覆蓋率和功能覆蓋率的分析,來保證仿真是做的比較充分完備的。
    的頭像 發(fā)表于 01-03 12:34 ?1660次閱讀
    怎么用Vivado做<b class='flag-5'>覆蓋率</b>分析

    synopsys 的design ware:DW_fpv_div,浮點數(shù)除法器,默認32位下,想提升覆蓋率(TMAX),如果用功能case去提升覆蓋率呢?

    覆蓋率只有微微的提升,請問是否要遍歷很多數(shù)才能提升覆蓋率嗎?一般這種浮點數(shù)有什么方法去跑嗎? 每個數(shù)都跑豈不是天文數(shù)字,本人剛接觸不久,請大佬指教下,謝謝
    發(fā)表于 10-15 18:38

    如何改善5G覆蓋率

    改善5G覆蓋率的方法
    發(fā)表于 12-15 07:52

    如何提高DFT設計測試覆蓋率

    提高DFT設計測試覆蓋率的有效方法是什么
    發(fā)表于 05-07 06:37

    怎么提高非隨機圖形設計的故障覆蓋率

    怎么提高非隨機圖形設計的故障覆蓋率?為LBIST設計提高故障檢測能力的技術是什么?
    發(fā)表于 05-08 07:11

    嵌入式仿真平臺SkyEye的覆蓋率分析相關資料下載

    代碼執(zhí)娜行覆蓋情況的功能,來檢測代碼中未執(zhí)行覆蓋情況。在覆蓋率分析時需要分析嵌入式軟件的指令覆蓋率、指令函數(shù)覆蓋率、指令函數(shù)分支
    發(fā)表于 12-17 07:27

    重點厘清覆蓋率相關的概念以及在芯片開發(fā)流程中跟覆蓋率相關的事項

    功能覆蓋率和代碼覆蓋率的目標前,一般要求用例是100%pass的,即手上已開發(fā)的用例都能執(zhí)行通過。計劃覆蓋率指的是測試通過的測試點(test point)占所有測試點的比例。嚴格來講,
    發(fā)表于 09-14 11:57

    Systemverilog覆蓋率的合并和計算方式

      在systemverilog中,對于一個covergroup來說,可能會有多個instance,我們可能需要對這些instance覆蓋率進行操作。  只保存covergroup type的覆蓋率
    發(fā)表于 03-21 14:24

    Verilog代碼覆蓋率檢查

    Verilog代碼覆蓋率檢查是檢查驗證工作是否完全的重要方法,代碼覆蓋率(codecoverge)可以指示Verilog代碼描述的功能有多少在仿真過程中被驗證過了,代碼覆蓋率分析包括以下分析內(nèi)容。
    發(fā)表于 04-29 12:35 ?8421次閱讀

    IP開發(fā)時如何考慮復用覆蓋率

    如何在開發(fā)IP的同時去鞏固集成和復用覆蓋率?IP的某些功能和性能是可以配置的,需要考慮的是IP被各種合理配置后的工作是否都能夠正常,將功能覆蓋率先整理為層次化的抽象功能覆蓋率模型,稱之為cover model。
    的頭像 發(fā)表于 02-18 12:08 ?2616次閱讀

    嵌入式代碼覆蓋率統(tǒng)計方法和經(jīng)驗

    代碼覆蓋率是衡量軟件測試完成情況的指標,通常基于測試過程中已檢查的程序源代碼比例計算得出。代碼覆蓋率可以有效避免包含未測試代碼的程序被發(fā)布。 1. 問題背景 代碼覆蓋(Code coverage
    的頭像 發(fā)表于 01-06 15:06 ?3157次閱讀
    嵌入式代碼<b class='flag-5'>覆蓋率</b>統(tǒng)計方法和經(jīng)驗

    統(tǒng)計嵌入式代碼覆蓋率的方法和經(jīng)驗

    代碼覆蓋率是衡量軟件測試完成情況的指標,通常基于測試過程中已檢查的程序源代碼比例計算得出。代碼覆蓋率可以有效避免包含未測試代碼的程序被發(fā)布。 1. 問題背景 代碼覆蓋(Code coverage
    的頭像 發(fā)表于 03-29 11:58 ?1943次閱讀
    統(tǒng)計嵌入式代碼<b class='flag-5'>覆蓋率</b>的方法和經(jīng)驗

    怎么才能寫出高覆蓋率的Verilog代碼?

    芯片前端工程中,測試驗證的核心理念:以提高覆蓋率為核心。設計工程師需要關心的主要有行覆蓋率(Block),條件覆蓋率(Expression),翻轉覆蓋率(Toggle),狀態(tài)機
    的頭像 發(fā)表于 06-01 10:13 ?2622次閱讀

    覆蓋率的Verilog代碼的編寫技巧

    設計工程師需要關心的主要有行覆蓋率(Block),條件覆蓋率(Expression),翻轉覆蓋率(Toggle),狀態(tài)機覆蓋率。本文從ASIC設計的角度上來討論,如何寫出高
    的頭像 發(fā)表于 05-26 17:30 ?4275次閱讀

    代碼覆蓋率記錄

    為確保具體的產(chǎn)品(例如,醫(yī)療或航空電子市場)質量合格, 通常需要提供語句覆蓋與判定覆蓋認證證明。對于各種嵌 入式系統(tǒng),規(guī)范要求高度優(yōu)化的代碼需要實時測試。禁止 代碼插裝和運行時篡改。勞特巴赫代碼覆蓋率測試系統(tǒng)為 客戶提供
    發(fā)表于 11-03 11:02 ?0次下載
    代碼<b class='flag-5'>覆蓋率</b>記錄
    主站蜘蛛池模板: 亚洲日韩视频免费观看| 快播最新电影网站| 亚洲AV久久无码精品蜜桃| 国产精品视频免费观看| 胸太大被男同桌吃好爽| 国产片MV在线观看| 亚洲AV中文字幕无码久久| 国产一区2区| 亚洲野狼综合网站| 久久久中日AB精品综合| 国产 亚洲 中文在线 字幕| 免费国产精品视频| 99re6久久在热线视频| 男女后进式猛烈xx00动态图片| 97超碰射射射| 欧洲亚洲精品A片久久99果冻| www黄色com| 入禽太深免费视频10| 国产成人免费观看| 亚洲第一成年网站视频| 精品水蜜桃久久久久久久| 在线观看永久免费网站| 奶头好翘是不是想要了| 啊…嗯啊好深男男高h文总受| 人妻 中文无码 中出| 国产精品成人免费| 亚洲免费片| 老师的快感电影完整版| BL文高H强交| 日本熟妇乱妇熟色A片蜜桃| 国产精品成人自拍| 亚洲看片网站| 萝莉御姐被吸奶| 波多野结衣的AV一区二区三区| 色戒床震视频片段| 韩国女主播内部vip自带氏巾| 在线不卡中文字幕| 人人插人人射| 国产又湿又黄又硬又刺激视频 | 狼与美女谐音歌词| 阿片在线播放|