chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

關(guān)于使用Polyspace進行死代碼檢測和覆蓋率度量的分析和介紹

MATLAB ? 來源:djl ? 2019-09-18 15:30 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Polyspace工具可幫助您識別軟件中的死代碼或執(zhí)行不到的代碼。這可以節(jié)省時間并降低與測試活動相關(guān)的成本,從而實現(xiàn)穩(wěn)健性和完整的代碼覆蓋度。Polyspace產(chǎn)品提供的有關(guān)軟件運行時行為的詳細信息證明了死代碼的存在,并幫助您將控制和數(shù)據(jù)流跟蹤到潛在來源。這在遵守行業(yè)標準(如DO178B/C、ISO26262、IEC61508和IEC62304)時尤其重要。

死代碼是您的應用中永遠不會執(zhí)行的部分。常見的原因包括:

條件分支中的編程錯誤

由于輸入數(shù)據(jù)永遠不會導致執(zhí)行某個特定分支,代碼永遠不會得到執(zhí)行

調(diào)試結(jié)構(gòu)和其他非功能代碼

針對不同運行時情景而設(shè)計的可重用組件

您的應用中存在死代碼可能導致嚴重的后果,因為它可能是隱藏錯誤的根源。死代碼還意味著該代碼效率低下,因為它會增加可執(zhí)行文件的大小,這對于嵌入式應用影響很大。還可能導致法律問題。

關(guān)于使用Polyspace進行死代碼檢測和覆蓋率度量的分析和介紹

死代碼的簡單示例

此外,檢測死代碼的效率可能非常低,使用傳統(tǒng)的測試方法幾乎不可能檢測到。根據(jù)DO-178C的形式方法補充DO—333,“涉及‘始終/從不’的需求一般不能由一組有限的測試用例進行驗證,但可以通過形式分析進行驗證?!?/p>

關(guān)于使用Polyspace進行死代碼檢測和覆蓋率度量的分析和介紹

使用測試實現(xiàn)完整代碼覆蓋率的成本

Polyspace產(chǎn)品可以幫助您找到死代碼,優(yōu)化測試周期,并縮短整個驗證周期。

這非常重要,因為它可以減少工程師試圖獲得100%代碼覆蓋率所花費的時間,還可以節(jié)省測試時間和開發(fā)資源。這對于必須遵守像DO178B/C之類的標準的高度完整性和安全關(guān)鍵型應用尤其如此。

DO-178B/ED-12B對死代碼和停用代碼的定義如下:

死代碼- 由于設(shè)計錯誤而無法在目標計算機環(huán)境的操作配置中執(zhí)行(代碼)或使用(數(shù)據(jù)),并且不能被追溯至系統(tǒng)或軟件需求的可執(zhí)行目標代碼(或數(shù)據(jù))。一個例外是嵌入式標識符。

停用代碼- 在設(shè)計上符合以下特征之一的可執(zhí)行目標代碼(或數(shù)據(jù)):

不是為了執(zhí)行(代碼)或使用(數(shù)據(jù)),例如以前開發(fā)的軟件組件的一部分

僅在目標計算機環(huán)境的特定配置中執(zhí)行(代碼)或使用(數(shù)據(jù)),例如由硬件引腳選擇或軟件編程的選項啟用的代碼

DO-178B/ED-12B的基本要求是刪除任何死代碼,并驗證停用的代碼,證明它不會被意外激活。因此,測試的成本非常高。無論認證要求如何,識別死代碼還是一個不錯的開發(fā)實踐,因為研究表明,死代碼和停用代碼是隱藏缺陷和運行時錯誤的根源。Polyspace產(chǎn)品可以幫助您優(yōu)化測試周期,并縮短整個驗證周期。

使用 Polyspace Bug Finder 識別執(zhí)行不到的代碼

即使在運行單個測試用例之前,您也可以使用PolySpace代碼驗證工具在模塊級或在完整的應用中識別執(zhí)行不到的代碼。如下圖所示,使用Polyspace Bug Finder,您可以直接在IDE(如Eclipse)中檢測執(zhí)行不到的代碼部分。這還有助于您考慮任何此類死代碼對您的應用的影響,從而使您能夠在第一時間做出更改。

關(guān)于使用Polyspace進行死代碼檢測和覆蓋率度量的分析和介紹


使用 Polyspace Bug Finder 在 Eclipse IDE 內(nèi)直接在編譯階段識別死代碼

使用 Polyspace Code Prover 證明死代碼的存在

Polyspace Code Prover可讓您證明死代碼的存在,因為它提供了數(shù)學證明方式,突出顯示某一段代碼,對于任何代碼路徑或者應用中任何組合變量值,該段代碼均不執(zhí)行。憑借形式化方法和抽象解釋技術(shù),Polyspace Code Prover可以證明應用中的死代碼,且誤報率幾乎為零。

關(guān)于使用Polyspace進行死代碼檢測和覆蓋率度量的分析和介紹

在 Polyspace Code Prover 中證明死代碼的存在,其中包括導致該問題的原因的詳細信息

您可以使用詳細的檢查信息進一步了解此類冗余的原因。它可能會揭示在需求捕獲中由于未識別或者未關(guān)聯(lián)任何測試用例而錯過的需求。還可以使用能夠識別上下文驗證參數(shù)范圍的數(shù)據(jù)范圍規(guī)范來識別死代碼和停用代碼。

代碼覆蓋率、代碼度量指標和趨勢

代碼覆蓋率是一項指標,用于量化表示某個軟件應用是否經(jīng)過全面測試并且包含錯誤的機率較低。結(jié)構(gòu)化代碼覆蓋率主要用作一種度量,表示達到了足夠的測試的情況。由于不可能測試所有可能的運行時場景,100%的代碼覆蓋率是指經(jīng)過測試已經(jīng)達到可接受水平的軟件。死代碼的存在使得不可能達到100%的代碼覆蓋率,并導致投入大量的時間和精力編寫不必要的測試用例。

Polyspace工具可產(chǎn)生并合成有用的代碼指標,準確地反映代碼的質(zhì)量。這些指標可以使用基于Web的儀表板查看。使用這一內(nèi)置功能,您可以訪問各種指標,如運行時錯誤、代碼復雜度,以及編碼違規(guī)。使用這些指標,您可以在從第一次迭代到最終交付版本的代碼進化過程中跟蹤達到預定義的軟件質(zhì)量目標的進度。您還可以測量實施的任何代碼更改對代碼庫造成的增量影響,例如由于更改而引入任何死代碼。

關(guān)于使用Polyspace進行死代碼檢測和覆蓋率度量的分析和介紹

在 Polyspace 基于 Web 的儀表板中跟蹤代碼質(zhì)量指標

此外,Polyspace產(chǎn)品還可以很好地與代碼覆蓋工具集成,如可以導入Polyspace產(chǎn)品驗證結(jié)果并使用這些結(jié)果補充代碼覆蓋解決方案的VectorCast。

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

    關(guān)注

    5152

    文章

    19675

    瀏覽量

    317636
  • 數(shù)據(jù)
    +關(guān)注

    關(guān)注

    8

    文章

    7256

    瀏覽量

    91891
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4900

    瀏覽量

    70754
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    藍牙協(xié)議分析儀能檢測哪些問題?

    分析儀可檢測的問題覆蓋從信號干擾到應用邏輯的全鏈路,關(guān)鍵在于結(jié)合協(xié)議層級逐步排查。例如: 連接不穩(wěn)定:先檢查物理層RSSI/SNR,再分析鏈路層連接參數(shù),最后驗證HCI命令處理。 數(shù)據(jù)
    發(fā)表于 07-15 15:52

    HarmonyOS AI輔助編程工具(CodeGenie)代碼測試

    本功能從DevEco Studio 5.1.0 Release版本開始支持。 根據(jù)選中的ArkTS方法名稱,CodeGenie支持自動生成對應單元測試用例,提升測試覆蓋率。 在ArkTS文檔中,光標
    發(fā)表于 07-14 17:33

    新能源車軟件單元測試深度解析:自動駕駛系統(tǒng)視角

    FGSM攻擊生成干擾圖像)和神經(jīng)元覆蓋率指標(如DeepXplore框架),確保模型在極端輸入下的可靠性。 ?測試用例設(shè)計方法論? ? 故障樹分析(FTA): ?針對制動失效等高風險場景,逆向推導
    發(fā)表于 05-12 15:59

    如何操作時域網(wǎng)絡分析進行故障檢測?

    操作時域網(wǎng)絡分析儀(TDNA)進行故障檢測需結(jié)合儀器設(shè)置、校準、時域轉(zhuǎn)換及數(shù)據(jù)分析等步驟。以下為系統(tǒng)化操作指南,涵蓋關(guān)鍵流程、參數(shù)配置及典型案例:一、操作前準備1. 儀器連接與配置 硬
    發(fā)表于 04-30 14:15

    時域網(wǎng)絡分析儀如何檢測電纜故障?

    時域網(wǎng)絡分析儀通過時域反射(TDR)技術(shù)來檢測電纜故障,其原理和具體檢測步驟如下:原理時域網(wǎng)絡分析儀基于電磁波在電纜中的傳播特性來檢測故障。
    發(fā)表于 04-29 14:37

    【JVM開發(fā)者必看】IntelliJ IDEA代碼分析實踐指南:實時糾錯、冗余檢測、自動修復等

    【IntelliJ IDEA中的代碼分析技巧】靜態(tài)代碼分析是指在不實際運行代碼的情況下掃描代碼
    的頭像 發(fā)表于 03-13 10:34 ?448次閱讀
    【JVM開發(fā)者必看】IntelliJ IDEA<b class='flag-5'>代碼</b><b class='flag-5'>分析</b>實踐指南:實時糾錯、冗余<b class='flag-5'>檢測</b>、自動修復等

    芯片制造中薄膜厚度量測的重要性

    本文論述了芯片制造中薄膜厚度量測的重要性,介紹了量測納米級薄膜的原理,并介紹了如何在制造過程中融入薄膜量測技術(shù)。
    的頭像 發(fā)表于 02-26 17:30 ?1248次閱讀
    芯片制造中薄膜厚<b class='flag-5'>度量</b>測的重要性

    深度解析:PCB銅問題的根源與處理方法

    區(qū)域。很多電子工程師在遇到死銅時,常常感到困惑,不確定是否需要去除它。接下來深圳PCB廠家將從多個角度分析銅的影響及其處理方法,希望能為工程師們提供有用的參考。
    的頭像 發(fā)表于 11-28 09:27 ?1068次閱讀

    國聯(lián)易安:“三管齊下”,惡意代碼輔助檢測“更高效”

    國內(nèi)專注于保密與非密領(lǐng)域的分級保護、等級保護、業(yè)務連續(xù)性安全和大數(shù)據(jù)安全產(chǎn)品解決方案與相關(guān)技術(shù)研究開發(fā)的領(lǐng)軍企業(yè)——國聯(lián)易安研究團隊在 長期對木馬、病毒等惡意代碼行為進行監(jiān)測、分析、研究的基礎(chǔ)上
    的頭像 發(fā)表于 11-12 12:03 ?449次閱讀

    使用Python進行圖像處理

    下面是一個關(guān)于使用Python在幾行代碼分析城市輪廓線的快速教程。
    的頭像 發(fā)表于 11-07 10:14 ?589次閱讀
    使用Python<b class='flag-5'>進行</b>圖像處理

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

    公司某個項目用到了這個DW:DW_fpv_div,但是scan跑完,這個模塊覆蓋率只有60%多,現(xiàn)在要我用TMAX軟件,通過功能去覆蓋,我看了下rpt報的faults點,嘗試去寫了幾個特殊值去做除法
    發(fā)表于 10-15 18:38

    汽車異構(gòu)硬件平臺開發(fā)如何進行靜態(tài)代碼分析

    先進的靜態(tài)代碼分析工具,其新版本中引入的多CCT功能為開發(fā)人員提供了強大的支持,該功能不僅簡化了多編譯器環(huán)境下的代碼分析過程,還可以極大增強代碼
    的頭像 發(fā)表于 10-09 16:15 ?890次閱讀
    汽車異構(gòu)硬件平臺開發(fā)如何<b class='flag-5'>進行</b>靜態(tài)<b class='flag-5'>代碼</b><b class='flag-5'>分析</b>

    利用靜態(tài)檢查工具完善功能安全中測試覆蓋率

    在功能安全中測試覆蓋率是比較重要的概念,也是在驗證過程中通常需要花費時間較多的步驟,如果能借助于靜態(tài)檢查工具的邏輯查找和聲明、測試用例自動補全等功能往往能取得事半功倍的效果。
    的頭像 發(fā)表于 09-05 09:15 ?838次閱讀
    利用靜態(tài)檢查工具完善功能安全中測試<b class='flag-5'>覆蓋率</b>

    如何使用Polyspace Code Prover來統(tǒng)計堆棧

    前一篇文章介紹了堆棧和內(nèi)存的一些背景知識。本次介紹如何使用 Polyspace Code Prover來統(tǒng)計堆棧,如何使用這些數(shù)據(jù)為軟件優(yōu)化服務。
    的頭像 發(fā)表于 07-25 14:06 ?1273次閱讀
    如何使用<b class='flag-5'>Polyspace</b> Code Prover來統(tǒng)計堆棧

    2025年智能水表將覆蓋全北京!超聲波測量技術(shù)助力智能水表實現(xiàn)全天候高精度流量監(jiān)測

    北京日報報道,預計到“十四五”規(guī)劃期末,北京市將基本實現(xiàn)智能遠傳水表的全覆蓋。據(jù)2023年3月22日的數(shù)據(jù)顯示,北京市自來水集團已經(jīng)為用戶安裝了超過330萬支智能遠傳水表,覆蓋率超過了50%。
    的頭像 發(fā)表于 07-19 16:05 ?1240次閱讀
    2025年智能水表將<b class='flag-5'>覆蓋</b>全北京!超聲波測量技術(shù)助力智能水表實現(xiàn)全天候高精度流量監(jiān)測