為了開發安全可靠的軟體,測驗是質量保證中不可或缺的一部分,如果沒有充分和記錄在案的測驗,就不可能確定軟體是否安全且功能正確,在這種情況下,代碼覆寫率(測驗覆寫率)的測量尤為重要,這是因為它可以用來確定一個軟體已經被測驗的全面程度,代碼覆寫率表示測驗代碼占總代碼的比例,例如,簡單來說,如果在測驗期間運行四分之三的選項,代碼覆寫率為 75%,
特別是在安全關鍵的軟體開發中,行業標準對代碼覆寫率提出了精確的要求,因此如果沒有足夠的測驗覆寫率證明,產品就無法在這里獲得認證,而且在其他開發專案中,公司越來越重視軟體質量和衡量代碼覆寫率,
市場上有多種代碼覆寫分析器可用于測量代碼覆寫,它們在處理和質量方面存在顯著差異,出于這個原因,我們展示了選擇代碼覆寫工具的十個基本標準:
- 獨立于編譯器
當然,代碼覆寫工具必須與專案中使用的編譯器配合使用,然而,依賴一個從一開始就可以獨立于編譯器使用的工具是很有意義的,這樣的工具可以在所有專案中使用,在編譯器更改的情況下也可以在當前專案中使用,可以獨立于編譯器使用的覆寫工具可以以更加多樣化的方式使用,因此是一項值得的投資,
- 易用性
如果最好的軟體不必要地復雜或沒有經過深思熟慮,則不情愿地(因此很少)使用它,另一方面,簡單的處理可以顯著提高用戶對使用測驗覆寫率工具的接受度,理想情況下,該工具在后臺運行,并且在測驗期間不會為用戶生成任何額外的作業,
- 覆寫報告的可理解性
在評估覆寫率報告時,應該一目了然地清楚代碼的哪些部分已經過測驗,哪些部分仍然缺乏覆寫率,使用良好的覆寫工具,測驗人員可以輕松地在源代碼級別識別哪些測驗用例仍然未完成,通過執行這些缺失的測驗,可以有針對性地增加代碼覆寫率,同時,這避免了因冗余測驗而導致的不必要的作業,

4. 支持更高的安全關鍵開發覆寫水平
對于安全關鍵軟體的測驗,標準(例如汽車領域的 ISO 26262、航空領域的 DO-178C 和鐵路運輸領域的 EN-50128)規定了高達 MC/DC 覆寫的高覆寫水平,因此,必須確保覆寫工具支持所有所需的覆寫級別,為了能夠長期使用解決方案,不僅應該考慮當前的需求,還應該考慮未來的需求,重要的是要知道:許多覆寫工具僅提供決策或分支覆寫,因此不足以用于安全關鍵軟體開發,
. 靈活集成
即使在公司內部,開發環境和工具鏈也常常是異構的,覆寫工具應該可以輕松應對所有這些不同的環境,必須能夠無縫集成到相應的構建程序和測驗的執行中,并且無需付出太多努力,如果該工具也可以通過命令列使用,則在創建自動構建方面具有優勢,
- 低儀器開銷
大多數覆寫率工具通過檢測源代碼來測量代碼覆寫率,帶有“計數器”的覆寫工具豐富了源代碼,它計算測驗期間相關代碼部分的執行位置和執行頻率,但是,這會增加原始代碼的大小,因此,在對記憶體有限的嵌入式目標進行測驗時,應注意盡可能降低這種所謂的儀器開銷,有時,各個代碼覆寫率工具之間的記憶體需求差異很大,例如,Verifysoft Technology 的代碼覆寫分析器 Testwell CTC++ 在這方面非常節省資源,
- 支持不同的編程語言
公司經常使用不同的編程語言或計劃在未來引入其他語言,因此,從一開始就選擇支持所有或盡可能多的這些語言的工具是有意義的,
- 支持“創意”編程
一些覆寫工具在分析偏離通用標準或具有高嵌套深度的語言結構時會遇到問題,然而,衡量測驗覆寫率的好工具還應該能夠應對“創造性”的編程風格,
- 安全關鍵軟體開發的適用性
在開發安全關鍵軟體時,相關標準要求整個工具鏈都必須合格,這里的目的是證明覆寫分析器和整個工具鏈中使用的其他工具都能可靠地作業,專業代碼覆寫工具制造商通過認證套件和工具認證建議支持軟體專案,在這種情況下,還應注意所選的覆寫工具是否已成功用于安全關鍵專案,
- 評估許可證、技術支持和客戶參考
應在工具評估期間檢查覆寫工具對自己專案的適用性,在此期間,您已經對技術支持的表現有一個印象,是否也可以通過電話或僅通過電子郵件獲得支持?支持人員的能力如何?回應時間如何?用戶手冊有多好和有多實用?制造商是否也提供培訓?最后但并非最不重要的一點是,還建議查看制造商的客戶參考資料,這些可以提供有關覆寫分析器質量和供應商性能的更多資訊,
結論
代碼覆寫對于安全關鍵軟體開發來說是強制性的,這是有充分理由的,但對于任何想要提高軟體質量的人來說,這也是一個很好的方法,可以衡量和增加測驗的覆寫范圍和價值,在選擇代碼覆寫分析器時,必須注意確保該工具滿足設定的要求,此外,易用性和專業支持等因素也起著重要作用,如果使用得當,一個好的測驗覆寫率工具有助于顯著提高質量,增加開發人員和測驗人員的積極性,并以節省成本的方式執行測驗,
相關實戰:https://www.99qibang.cn/information/50bf3eeb78fc402786e8dfb8c8c908d7.html
https://www.99qibang.cn/information/6d9ff7241fb44440bcce931a9fdae89a.html
https://www.99qibang.cn/information/6d9ff7241fb44440bcce931a9fdae89a.html
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/300216.html
標籤:其他
上一篇:2021年9月面試視頻總結
下一篇:A0-01.本地集群環境介紹
