国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

選擇代碼覆蓋工具的 10 個標準

陸軍航空兵 ? 來源:陸軍航空兵 ? 作者:陸軍航空兵 ? 2022-07-20 18:06 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

為了開發安全可靠的軟件,測試是質量保證不可或缺的一部分。如果沒有充分的記錄測試,就不可能確定軟件是否安全且功能是否正確。在這種情況下,代碼覆蓋率(測試覆蓋率)的測量尤為重要。這是因為它可以用來確定一個軟件已經被測試的全面程度。代碼覆蓋率表示測試代碼與總代碼的比率。簡而言之,例如,如果在測試期間運行四分之三的可能選項,則代碼覆蓋率為 75%。

特別是在安全關鍵型軟件開發中,行業標準對代碼覆蓋率規定了精確的要求,因此如果沒有足夠的測試覆蓋率證明,產品就無法在此處進行認證。而且在其他開發項目中,公司也越來越重視軟件質量和衡量代碼覆蓋率。

市場上有各種代碼覆蓋率分析儀可用于測量代碼覆蓋率。它們在處理和質量方面存在顯著差異。出于這個原因,我們展示了選擇代碼覆蓋工具的十個基本標準:

1. 獨立于編譯器

當然,代碼覆蓋工具必須與項目中使用的編譯器配合使用。但是,從一開始就依賴于可以獨立于編譯器使用的工具是很有意義的。這樣的工具可以在所有項目中使用,在編譯器更改的情況下也可以在當前項目中使用。可以獨立于編譯器使用的覆蓋工具可以以更多樣化的方式使用,因此是值得投資的。

2. 易用性

如果最好的軟件不必要地復雜或沒有經過深思熟慮,則不情愿地(因此很少)使用它。另一方面,簡單的處理可以顯著提高用戶對使用測試覆蓋工具的接受度。理想情況下,該工具在后臺運行,并且在測試期間不會為用戶生成任何額外的工作。

3. 報道的可理解性

在評估覆蓋率報告時,應該一目了然地知道哪些代碼部分已經過測試,哪些地方仍然缺乏覆蓋率。使用良好的覆蓋率工具,測試人員可以輕松地在源代碼級別識別哪些測試用例仍然出色。通過執行這些缺失的測試,可以有針對性地增加代碼覆蓋率。同時,這避免了因冗余測試而導致的不必要的工作。

poYBAGLO7YSAe2AlAAMJY_ah8x0377.jpg


圖:除了單個代碼部分的代碼覆蓋率概述(上),有效的代碼覆蓋率工具(如 Testwell CTC++)還顯示詳細信息(下),準確顯示測試覆蓋源代碼的程度,即使是最高覆蓋率。(來源:Verifysoft Technology)

4. 為安全關鍵型開發提供更高覆蓋水平的支持

對于安全關鍵軟件的測試,標準(例如汽車領域的 ISO 26262、航空領域的 DO-178C 和鐵路運輸領域的 EN-50128)規定了最高 MC/DC 覆蓋范圍的高覆蓋水平。因此,必須確保覆蓋工具支持所有必需的覆蓋級別。為了能夠長期使用解決方案,不僅要考慮當前的需求,還要考慮未來的需求。重要提示:許多覆蓋工具僅提供決策或分支覆蓋,因此不足以進行安全關鍵型軟件開發。

代碼覆蓋率一覽

函數覆蓋率
函數覆蓋率衡量程序的所有函數是否都被調用。功能覆蓋率是通常測試覆蓋率級別中“最弱的”。

語句覆蓋率
語句覆蓋率衡量測試語句與所有語句相比的百分比。

決策覆蓋率/分支覆蓋率
在此覆蓋率級別,每個決策必須至少測試一次為真,一次為假。對于普通的 if 語句,這對應于分支覆蓋,其中每個分支都必須已執行。

條件覆蓋
條件覆蓋詳細考慮復合決策。對于由通過布爾運算符組成的多個原子條件組成的決策,必須將這些條件中的每一個單獨測試為“真”和“假”。

多條件覆蓋和修正條件/決策覆蓋 (MC/DC)
對于多條件覆蓋,必須檢查所有可能的真假組合以進行復合決策。在一個決策中有多個條件的情況下,這需要大量幾乎不切實際的測試用例。因此,在實踐和標準中,修改后的條件/決策覆蓋率 (MC/DC) 是相關的,其中測試用例的數量減少了,而測試覆蓋率的信息價值仍然足夠高。

5. 靈活集成

即使在公司內部,開發環境和工具鏈通常也非常多樣化。覆蓋工具應該可以輕松應對所有這些不同的環境。必須能夠無縫地集成到各自的構建過程和測試的執行中,并且無需付出很大的努力。如果該工具也可以通過命令行使用,則在創建自動構建方面具有優勢。

6. 低儀表開銷

大多數覆蓋率工具通過檢測源代碼來衡量代碼覆蓋率。源代碼由帶有“計數器”的覆蓋工具豐富,它計算相關代碼部分在測試期間執行的位置和頻率。但是,這會增加原始代碼的大小。因此,在內存有限的嵌入式目標上進行測試時,應注意將這種所謂的檢測開銷保持在盡可能低的水平。各個代碼覆蓋工具之間的內存需求差異有時是相當大的。例如,Verifysoft Technology 的代碼覆蓋率分析器 Testwell CTC++ 在這方面非常節省資源。

7.支持不同的編程語言

公司經常使用不同的編程語言或計劃在未來引入其他語言。因此,從一開始就選擇支持所有或盡可能多的這些語言的工具是有意義的。

8. 支持“創意”編程

一些覆蓋工具在分析偏離通用標準或嵌套深度較高的語言結構時會遇到問題。然而,衡量測試覆蓋率的好工具也應該能夠應對“創造性”的編程風格。

9. 安全關鍵軟件開發的適用性

在開發安全關鍵型軟件時,相關標準要求整個工具鏈必須經過認證。這里的目的是證明覆蓋分析器和整個工具鏈中使用的其他工具都能可靠地工作。專業代碼覆蓋工具的制造商通過鑒定工具包和工具鑒定建議支持軟件項目。在這種情況下,還應注意所選的覆蓋工具是否已在安全關鍵項目中成功使用。

10. 評估許可、技術支持和客戶參考

應在工具評估期間檢查覆蓋工具對自己項目的適用性。在此期間,您已經對技術支持的表現有所了解。是否也可以通過電話或僅通過電子郵件獲得支持?支持人員的能力如何?響應時間呢?用戶手冊有多好和實用?制造商是否也提供培訓?最后但同樣重要的是,還建議查看制造商的客戶參考資料。這些可以提供有關覆蓋分析儀質量和供應商性能的更多信息。

結論

代碼覆蓋對于安全關鍵型軟件開發來說是強制性的,這是有充分理由的。但對于任何想要提高軟件質量的人來說,這也是衡量和增加測試覆蓋率和價值的好方法。在選擇代碼覆蓋率分析器時,必須注意確保該工具滿足設定的要求。此外,易用性和專業支持等因素也起著重要作用。正確使用,一個好的測試覆蓋工具有助于顯著提高質量,增加開發人員和測試人員的積極性,并以節省成本的方式執行測試。

審核編輯 黃昊宇

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

    關注

    30

    文章

    4967

    瀏覽量

    73960
  • 覆蓋
    +關注

    關注

    0

    文章

    18

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    嵌入式軟件單元測試必要性與專業工具重要性的系統性專業研究報告

    強制覆蓋率要求 報告審計要求 ?ISO 26262?(ASIL D) 汽車電子 ?100% MC/DC?(修正條件/判定覆蓋) 必須由自動化工具生成?可追溯矩陣?(需求→代碼→測試用
    發表于 03-05 10:41

    C語言單元測試在嵌入式軟件開發中的作用及專業工具的應用

    ,生成可追蹤至需求ID的測試用例 支持ISO 26262對\"所有安全目標相關代碼必須達到100% MC/DC覆蓋\"的強制要求 winAMS相比傳統測試工具的優勢: ?零侵入測試
    發表于 12-18 11:46

    選擇10kVA不間斷電源前,必須搞懂的5參數與3大應用場景

    一組精確的參數解讀,勝過十份模糊的產品手冊。選擇10kVA不間斷電源時,技術參數的精確理解往往比品牌選擇更為關鍵。01功率因數匹配:10kVA不等于
    的頭像 發表于 12-11 11:01 ?931次閱讀
    <b class='flag-5'>選擇</b><b class='flag-5'>10</b>kVA不間斷電源前,必須搞懂的5<b class='flag-5'>個</b>參數與3大應用場景

    國內哪些生成式 AI 工具最容易上手?企業真正看重的是“能馬上用起來”

    自動回復、工程團隊做代碼輔助,大家都遇到同一痛點——工具多,但真正“落地順暢”的不多。這也是為什么“容易上手”正在成為企業選擇 AI 工具的首要標準
    的頭像 發表于 12-08 10:55 ?354次閱讀

    嵌入式開發工具版本的選擇策略

    兼容性測試標準過渡期支持策略 二、可靈活選擇軟件版本,但建議統一 有些工具,它對項目的“依耐性”不強,基本上不同版本之間都能用,團隊之間可以不用統一軟件版本。 比如J-Link 、ST-Link等這種
    發表于 11-25 06:11

    使用SAFERTOS與LDRA工具套件提升功能安全

    人員可以自動化代碼覆蓋分析,加速關鍵標準(如IEC 61508、ISO 26262、DO-178C等)的認證過程。
    的頭像 發表于 11-11 09:44 ?634次閱讀

    代碼開發平臺推薦:2025國內低代碼開發平臺排名TOP10

    是 2025 年國內低代碼開發平臺排行榜 TOP10,為企業選擇適合的代碼開發平臺提供參考。 1. 普元低代碼平臺 普元低
    的頭像 發表于 10-28 10:22 ?732次閱讀

    嵌入式軟件測試與專業測試工具的必要性深度解析

    系統化解決方案,其必要性體現在多個維度:滿足行業合規要求汽車電子ISO 26262、航空DO-178C等標準強制要求代碼覆蓋率指標達到C1(分支覆蓋)≥100%、MC/DC(修正條件判
    發表于 09-28 17:42

    如何利用外部校驗工具驗證電能質量在線監測裝置的準確性?

    ,判斷其誤差是否在規定精度范圍內。該方法是校準周期延長后、或日常懷疑裝置精度時最可靠的驗證手段,需遵循 “標準溯源、多工況覆蓋、數據閉環” 的原則。以下是具體操作流程、工具選擇及關鍵要
    的頭像 發表于 09-11 17:24 ?808次閱讀
    如何利用外部校驗<b class='flag-5'>工具</b>驗證電能質量在線監測裝置的準確性?

    如何選擇適合的標準源設備來校準電能質量在線監測裝置?

    選擇適合的標準源設備校準電能質量在線監測裝置(以下簡稱 “監測裝置”),核心是 匹配校準需求、覆蓋技術參數、適配應用場景 ,需從 “校準目標→技術指標→場景適配→附加能力” 四維度層
    的頭像 發表于 09-04 16:50 ?862次閱讀
    如何<b class='flag-5'>選擇</b>適合的<b class='flag-5'>標準</b>源設備來校準電能質量在線監測裝置?

    如何選擇適合自己項目的通信協議評估工具

    驟的決策框架,結合項目關鍵變量(如協議類型、評估目標、資源約束等),幫助精準匹配工具: 一、先明確 3 核心決策前提:錨定選型方向 在選擇工具前,需先梳理項目的基礎約束,這是后續篩選
    的頭像 發表于 08-27 09:19 ?712次閱讀
    如何<b class='flag-5'>選擇</b>適合自己項目的通信協議評估<b class='flag-5'>工具</b>?

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

    放置于方法名稱上或框選完整的待測試方法代碼塊,右鍵選擇CodeGenie > Generate UT,開始生成單元測試用例。 說明 最多支持解讀20000字符以內的代碼片段。ArkUI
    發表于 07-14 17:33

    代碼靜態測試工具Perforce QAC 2025.1新特性

    Perforce QAC 2025.1實現了對新發布的MISRA C:2025?標準的100%覆蓋,并提供了對應的新合規模塊。該版本還擴展了對CERT C Level 1建議的覆蓋范圍,改進了與持續
    的頭像 發表于 04-21 15:14 ?1069次閱讀
    <b class='flag-5'>代碼</b>靜態測試<b class='flag-5'>工具</b>Perforce QAC 2025.1新特性

    安森美再談圖像傳感器的選擇標準

    要成功設計和開發需要圖像傳感器的設備,了解選擇標準的復雜性和細微差別至關重要。設計人員需要從眾多參數中進行選擇,例如分辨率、像素大小、像素類型、幀率、快門類型、光學格式、功能特性等。選擇
    的頭像 發表于 03-12 11:37 ?1091次閱讀

    STM32CubeMX生成代碼就會覆蓋CMakeLists.txt文件,怎么解決?

    請教一下用STM32CubeMX生成代碼后,我自己加了一頭文件和源文件,這些自己加的文件不是要配置到CMakeLists.txt編譯么,但下載在用STM32CubeMX生成成代碼,就會覆蓋
    發表于 03-12 08:03