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

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

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

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

如何提高嵌入式軟件測(cè)試準(zhǔn)確性

要長(zhǎng)高 ? 來(lái)源:網(wǎng)絡(luò)整理 ? 作者:網(wǎng)絡(luò)整理 ? 2023-09-29 06:41 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

當(dāng)嵌入式開(kāi)發(fā)人員測(cè)試他們的軟件時(shí),有多種力量在起作用。由于對(duì)更大的計(jì)算工作負(fù)載、更廣泛的連接以及改進(jìn)的安全性的需求,系統(tǒng)的復(fù)雜性不斷增加,這使得開(kāi)發(fā)人員更難根據(jù)需求驗(yàn)證代碼。隨著發(fā)布時(shí)間的縮短,測(cè)試團(tuán)隊(duì)努力使傳統(tǒng)的測(cè)試方法適應(yīng)更大的復(fù)雜性和規(guī)模。

需要一種新的測(cè)試方法,團(tuán)隊(duì)正在尋求數(shù)學(xué)上證明的代碼正確性,以顯著提高對(duì)其應(yīng)用程序的信心。要了解當(dāng)今的產(chǎn)品目標(biāo)與傳統(tǒng)測(cè)試方法之間的差距,考慮復(fù)雜性如何影響測(cè)試會(huì)有所幫助:

覆蓋。隨著軟件復(fù)雜性的增長(zhǎng),創(chuàng)建涵蓋足夠級(jí)別的代碼庫(kù)(包括函數(shù)、語(yǔ)句、路徑、決策和條件)的測(cè)試變得越來(lái)越困難。

規(guī)模。無(wú)論測(cè)試范圍(特性、組件、庫(kù)或功能)如何,單元越多,測(cè)試它們所需的時(shí)間和資源就越多。

速度。傳統(tǒng)的測(cè)試開(kāi)發(fā)和執(zhí)行實(shí)踐無(wú)法跟上發(fā)布時(shí)間表的步伐,不可避免地迫使在測(cè)試覆蓋率和時(shí)間之間進(jìn)行權(quán)衡。

長(zhǎng)期以來(lái),人們一直認(rèn)為接近 100% 的代碼覆蓋率是不可能的,因?yàn)檫@樣的目標(biāo)極難實(shí)現(xiàn)且運(yùn)行成本高昂。單元測(cè)試、滲透測(cè)試、動(dòng)態(tài)分析 – 所有傳統(tǒng)技術(shù)都需要大量的時(shí)間和資源來(lái)執(zhí)行,并導(dǎo)致對(duì)系統(tǒng)中錯(cuò)誤和漏洞的不完整視圖。

隨著軟件技術(shù)和計(jì)算能力的最新進(jìn)步,這種信念現(xiàn)在已成為一個(gè)被證明的神話。學(xué)術(shù)和行業(yè)研究人員已經(jīng)開(kāi)發(fā)出數(shù)學(xué)上嚴(yán)格的技術(shù),稱為形式化方法,可實(shí)現(xiàn)高達(dá) 100% 的代碼覆蓋率并保證系統(tǒng)的正確性 - 現(xiàn)在可供企業(yè)就緒平臺(tái)中的安全和安保關(guān)鍵型開(kāi)發(fā)團(tuán)隊(duì)使用。

了解基于正式方法的測(cè)試工具

在紙面上,形式化方法明確證明代碼沒(méi)有錯(cuò)誤和安全漏洞等問(wèn)題。這些方法使用嚴(yán)格指定的數(shù)學(xué)模型,根據(jù)精確定義的規(guī)范驗(yàn)證軟件的屬性和行為。換句話說(shuō),形式化方法可以找到代碼中出現(xiàn)的所有問(wèn)題。

在實(shí)踐中,任何開(kāi)發(fā)人員都可以使用且負(fù)擔(dān)得起基于企業(yè)級(jí)正式方法的測(cè)試工具。它們被稱為詳盡的靜態(tài)分析工具,經(jīng)過(guò)精心設(shè)計(jì)和驗(yàn)證,可將正式方法的強(qiáng)大功能集成到安全和安保關(guān)鍵型開(kāi)發(fā)團(tuán)隊(duì)的現(xiàn)有驗(yàn)證和確認(rèn)流程中。

與傳統(tǒng)的測(cè)試和靜態(tài)分析方法相比,這些工具有幾個(gè)優(yōu)點(diǎn):

高達(dá) 100% 的應(yīng)用程序覆蓋率,涵蓋所有可能的功能、語(yǔ)句、路徑、決策和條件。

高達(dá) 100% 的輸入覆蓋率,涵蓋被測(cè)單元范圍內(nèi)的所有可能值。

數(shù)學(xué)保證代碼中沒(méi)有未定義的行為(錯(cuò)誤和漏洞),導(dǎo)致部署中零問(wèn)題。

零漏報(bào),因此開(kāi)發(fā)人員可以增強(qiáng)發(fā)現(xiàn)所有問(wèn)題的信心。

誤報(bào)率低至零,這意味著開(kāi)發(fā)人員花在追逐并非真正問(wèn)題上的時(shí)間更少。

顯著縮短測(cè)試時(shí)間,提高資源消耗效率。

圖 1 說(shuō)明了差異。傳統(tǒng)的測(cè)試方法通常是測(cè)試用例開(kāi)發(fā)和算法設(shè)計(jì)的“最大努力”嘗試,受到人力和項(xiàng)目進(jìn)度的限制。這會(huì)導(dǎo)致測(cè)試每次運(yùn)行執(zhí)行一個(gè)代碼分支,并限制團(tuán)隊(duì)在給定測(cè)試階段可以覆蓋的內(nèi)容。以正式方法為后盾的詳盡靜態(tài)分析可在單次測(cè)試運(yùn)行中并行分析所有分支,將覆蓋率提高到 100%,并顯著縮短測(cè)試時(shí)間。

wKgZomUFaXqAECEkAAGaYDz7HdM881.png

圖 1:傳統(tǒng)測(cè)試方法(左)和聲音靜態(tài)分析(右)之間的代碼路徑比較。訪問(wèn)的段以橙色顯示;未訪問(wèn)的段為黑色。

詳盡的靜態(tài)分析可以為開(kāi)發(fā)人員提供一種強(qiáng)大的方法來(lái)管理軟件復(fù)雜性,從而極大地改變他們對(duì)軟件復(fù)雜性的看法。

詳盡的靜態(tài)分析如何提供幫助

傳統(tǒng)測(cè)試方法的一個(gè)限制是它們的狀態(tài)空間覆蓋,即數(shù)據(jù)值和輸入、控制和數(shù)據(jù)流的不同組合的數(shù)量以及它們可以覆蓋的輸出路徑的固有限制。例如,傳統(tǒng)的測(cè)試方法通常會(huì)在給定預(yù)期輸入的情況下測(cè)試預(yù)期輸出的函數(shù)。一些靜態(tài)分析工具對(duì)此進(jìn)行了擴(kuò)展,以涵蓋更廣泛的輸入和輸出。但由于測(cè)試設(shè)計(jì)、實(shí)現(xiàn)和計(jì)劃約束,這些工具無(wú)法測(cè)試所有可能的行為。

下面的代碼示例演示了一個(gè)遞增數(shù)組中的單元格值的 C 函數(shù)。

wKgZomUFaYaABxU-AACd4QQ_ViE564.png

典型的單元測(cè)試將根據(jù)函數(shù)的要求進(jìn)行驗(yàn)證,檢查函數(shù)是否遞增了輸出數(shù)組中的單元格值,并根據(jù)結(jié)果報(bào)告通過(guò)或失敗。此測(cè)試不一定會(huì)檢查數(shù)組索引 *p 是否由于系統(tǒng)中意外或不希望的副作用而導(dǎo)致越界內(nèi)存訪問(wèn) - 就像本代碼示例中由于 while 循環(huán)中指定的不正確條件而發(fā)生的那樣。

盡管存在緩沖區(qū)溢出,但針對(duì)要求的傳統(tǒng)測(cè)試將在調(diào)用函數(shù)后驗(yàn)證數(shù)組是否為 {2, 4, 6, 8},并且始終通過(guò),如以下控制臺(tái)輸出所示:

wKgZomUFaZKAeuHTAAAxWLTZK18407.png

除非測(cè)試設(shè)計(jì)者考慮越界數(shù)組訪問(wèn)的可能性,否則永遠(yuǎn)不會(huì)識(shí)別此緩沖區(qū)溢出。

這些類型的細(xì)微缺陷可能導(dǎo)致內(nèi)存損壞,從而導(dǎo)致潛在的錯(cuò)誤、崩潰或應(yīng)用程序漏洞 - 傳統(tǒng)測(cè)試方法不可見(jiàn),但可以通過(guò)詳盡的靜態(tài)分析工具發(fā)現(xiàn),如圖 2 所示。該工具檢測(cè)到數(shù)組開(kāi)頭后有 16 個(gè)字節(jié)的寫(xiě)入:緩沖區(qū)溢出。

wKgaomUFaaGAE-gbAAFz56nQnWw103.png

圖 2:在 TrustInSoft 詳盡靜態(tài)分析工具中查找結(jié)果的屏幕截圖。

這種內(nèi)存損壞可以通過(guò)更詳細(xì)的測(cè)試用例來(lái)揭示,其中越界寫(xiě)入條件會(huì)影響變量名稱的值,即使它不參與測(cè)試的函數(shù),如以下控制臺(tái)輸出所示:

wKgaomUFaayAOSBRAACLWVfo0OQ187.png

但是,開(kāi)發(fā)團(tuán)隊(duì)很少實(shí)現(xiàn)此級(jí)別的測(cè)試深度,尤其是當(dāng)代碼比此示例更復(fù)雜時(shí)。

硬件感知在靜態(tài)分析中的重要性

更 高級(jí) 的 詳盡 靜態(tài) 分析 工具 為 驗(yàn)證 和 確認(rèn) 活動(dòng) 帶來(lái) 硬件 感知, 從而 實(shí)現(xiàn) 更 準(zhǔn)確 和 高效 的 測(cè)試 覆蓋率。硬件感知的重要性怎么強(qiáng)調(diào)都不為過(guò),因?yàn)榫幾g器實(shí)現(xiàn)、硬件架構(gòu)和內(nèi)存對(duì)齊的差異可能導(dǎo)致測(cè)試條件和代碼行為大不相同。例如:

在 64 位目標(biāo)上,long 通常為 64 位,int 通常為 32 位。

在 32 位目標(biāo)上,long 和 int 通常都是 32 位。

這些硬件差異會(huì)影響測(cè)試條件、輸入和路徑,如以下代碼示例所示:

wKgZomUFabqAJcEPAAAmq-4jkM8754.png

如果沒(méi)有硬件感知,測(cè)試或分析方法將無(wú)法確定最后一條語(yǔ)句是否導(dǎo)致整數(shù)溢出(32 位目標(biāo))或不導(dǎo)致整數(shù)溢出(64 位目標(biāo))。在某些情況下,測(cè)試將執(zhí)行比必要的更多的運(yùn)行,以涵蓋硬件支持范圍之外的條件。在其他情況下,測(cè)試可能只是錯(cuò)過(guò)潛在的溢出。硬件感知靜態(tài)分析在 100% 覆蓋率和實(shí)現(xiàn)覆蓋率所需的最少測(cè)試用例數(shù)量之間提供了完美的平衡。

另一個(gè)關(guān)鍵的硬件差異是字節(jié)序,如以下代碼示例所示:

wKgaomUFacSAZgLhAAAtRKXa_UY950.png

根據(jù)底層硬件的字節(jié)序,變量 c 將設(shè)置為 0xBE(大端序)或0xEF(小端序)——這是測(cè)試執(zhí)行的關(guān)鍵區(qū)別。

這種微妙的差異可能會(huì)導(dǎo)致災(zāi)難性的結(jié)果。請(qǐng)考慮將以下語(yǔ)句添加到上述代碼示例中的情況:

wKgZomUFac-AL1FUAAAPwzZfS8w732.png

在大端系統(tǒng)上,此語(yǔ)句將導(dǎo)致除以零條件,并可能導(dǎo)致應(yīng)用程序崩潰或其他不良行為。在小端系統(tǒng)上,此語(yǔ)句是有效的。了解這些差異的測(cè)試方法可以得出更準(zhǔn)確的結(jié)果。

包含硬件感知的詳盡靜態(tài)分析工具還具有以下優(yōu)點(diǎn):

開(kāi)發(fā)人員可以運(yùn)行硬件感知分析,而無(wú)需將物理目標(biāo)連接到主機(jī)。

目標(biāo)測(cè)試可以在開(kāi)發(fā)生命周期的早期運(yùn)行,甚至在物理硬件可用之前。

開(kāi)發(fā)團(tuán)隊(duì)可以提高測(cè)試能力并降低成本,因?yàn)椴恍枰總€(gè)主機(jī)和開(kāi)發(fā)人員都使用物理硬件。

詳盡靜態(tài)分析的未來(lái)

優(yōu)先考慮詳盡靜態(tài)分析的嵌入式開(kāi)發(fā)團(tuán)隊(duì)(代碼覆蓋率高達(dá) 100%,準(zhǔn)確性遠(yuǎn)高于傳統(tǒng)測(cè)試)將從其測(cè)試投資中獲得最高價(jià)值。那些現(xiàn)在能夠加入的開(kāi)發(fā)人員將能夠更好地提供更高質(zhì)量的代碼,并隨著時(shí)間的推移提高測(cè)試效率。

從長(zhǎng)遠(yuǎn)來(lái)看,從這種嚴(yán)格的測(cè)試中獲得的結(jié)果和知識(shí)將導(dǎo)致“零問(wèn)題”保證。這些原則將在開(kāi)發(fā)過(guò)程的早期帶來(lái)更強(qiáng)的可測(cè)試性,以支持安全和安保關(guān)鍵型產(chǎn)品要求和設(shè)計(jì),并顯著降低現(xiàn)場(chǎng)軟件故障和漏洞的可能性。

編輯:黃飛

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

    關(guān)注

    3

    文章

    4406

    瀏覽量

    66859
  • 嵌入式軟件
    +關(guān)注

    關(guān)注

    4

    文章

    247

    瀏覽量

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

    關(guān)注

    30

    文章

    4942

    瀏覽量

    73163
  • 軟件測(cè)試
    +關(guān)注

    關(guān)注

    2

    文章

    245

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    淺析嵌入式系統(tǒng)軟件的可靠測(cè)試難點(diǎn)

    `目前,嵌入式軟件的可靠評(píng)價(jià)主要依賴測(cè)試,因?yàn)?b class='flag-5'>嵌入式軟件的開(kāi)發(fā)環(huán)境和
    發(fā)表于 08-02 10:05

    合同智能審核軟件-提高審查效率和準(zhǔn)確性

    審查的準(zhǔn)確性。使用軟件能夠提高審查速度在提高合同審查的速度方面,靈玖合同智能審核軟件設(shè)定了豐富的合同審核范圍:1.審查合同格式是否規(guī)范:檢查
    發(fā)表于 09-05 17:22

    如何對(duì)嵌入式軟件進(jìn)行可靠測(cè)試

    摘 要 本文針對(duì)目前嵌入式軟件設(shè)計(jì)可靠測(cè)試用例的手段主要依靠手工分析,沿用傳統(tǒng)的軟件測(cè)試用例設(shè)
    發(fā)表于 10-27 06:10

    嵌入式軟件可靠測(cè)試方法是什么

    本文原文鏈接如下:https://www.jianshu.com/p/f6f5c3cd3fab目前,嵌入式軟件的可靠評(píng)價(jià)主要依賴測(cè)試,因?yàn)?b class='flag-5'>嵌入式
    發(fā)表于 12-21 07:09

    如何提高嵌入式軟件單元測(cè)試效率

    在本指南中,您將學(xué)習(xí)如何通過(guò)在更短的時(shí)間內(nèi)運(yùn)行更多的測(cè)試來(lái)增加您的單元測(cè)試吞吐量。 這種效率的提高來(lái)自于使用虛擬平臺(tái)而不是物理硬件作為開(kāi)發(fā)平臺(tái)。 本指南對(duì)任何開(kāi)發(fā)或運(yùn)行嵌入式
    發(fā)表于 08-28 06:31

    提高嵌入式軟件質(zhì)量的途徑

    本文針對(duì)當(dāng)前嵌入式軟件開(kāi)發(fā)中新的問(wèn)題、新的需求,提出了提高嵌入式軟件質(zhì)量的一些思路和具體方法,同時(shí)還對(duì)并行版本系統(tǒng)(CVS) 做了簡(jiǎn)單的介紹
    發(fā)表于 04-22 16:50 ?27次下載

    如何提高投標(biāo)報(bào)價(jià)編制的準(zhǔn)確性

        施工企業(yè)要在激烈的市場(chǎng)競(jìng)爭(zhēng)中戰(zhàn)勝對(duì)手,贏得工程項(xiàng)目,投標(biāo)報(bào)價(jià)的準(zhǔn)確性是關(guān)鍵。下面結(jié)合多年工作的實(shí)際,談一下如何提高投標(biāo)報(bào)價(jià)編制的準(zhǔn)確性。
    發(fā)表于 01-08 15:36 ?13次下載

    基于CodeTEST的嵌入式軟件測(cè)試技術(shù)

    嵌入式軟件測(cè)試有助于提高嵌入式軟件質(zhì)量和可靠。因此
    發(fā)表于 01-17 15:53 ?41次下載

    嵌入式Linux軟件測(cè)試框架的研究

    嵌入式Linux 軟件是最難測(cè)試的一類軟件。在測(cè)試過(guò)程中通過(guò)使用有效的測(cè)試框架,可以顯著
    發(fā)表于 06-07 17:14 ?29次下載

    嵌入式軟件測(cè)試參考書(shū)籍

    嵌入式軟件測(cè)試的幾本參考書(shū)籍:1、《嵌入式軟件測(cè)試》;2、《
    發(fā)表于 10-20 12:06 ?51次下載
    <b class='flag-5'>嵌入式</b><b class='flag-5'>軟件</b><b class='flag-5'>測(cè)試</b>參考書(shū)籍

    嵌入式軟件怎樣測(cè)試,如何對(duì)嵌入式軟件進(jìn)行可靠測(cè)試

    摘 要 本文針對(duì)目前嵌入式軟件設(shè)計(jì)可靠測(cè)試用例的手段主要依靠手工分析,沿用傳統(tǒng)的軟件測(cè)試用例設(shè)
    發(fā)表于 10-20 15:21 ?8次下載
    <b class='flag-5'>嵌入式</b><b class='flag-5'>軟件</b>怎樣<b class='flag-5'>測(cè)試</b>,如何對(duì)<b class='flag-5'>嵌入式</b><b class='flag-5'>軟件</b>進(jìn)行可靠<b class='flag-5'>性</b><b class='flag-5'>測(cè)試</b>

    嵌入式軟件測(cè)試研究意義,嵌入式軟件測(cè)試的研究

    摘要:嵌入式系統(tǒng)在人類生活中發(fā)揮著重要的作用,包括飛行控制器這樣的控制系統(tǒng),以及洗衣機(jī)這樣的家用電器。日前,嵌入式系統(tǒng)中軟件的比重越來(lái)越大,也越來(lái)越復(fù)雜,保證嵌入式
    發(fā)表于 10-20 17:20 ?17次下載
    <b class='flag-5'>嵌入式</b><b class='flag-5'>軟件</b><b class='flag-5'>測(cè)試</b>研究意義,<b class='flag-5'>嵌入式</b><b class='flag-5'>軟件</b><b class='flag-5'>測(cè)試</b>的研究

    測(cè)試嵌入式軟件測(cè)試VS一般軟件測(cè)試

    嵌入式軟件測(cè)試的復(fù)雜多樣3.3 嵌入式軟件測(cè)試中對(duì)實(shí)時(shí)
    發(fā)表于 10-21 13:06 ?31次下載
    【<b class='flag-5'>測(cè)試</b>】<b class='flag-5'>嵌入式</b><b class='flag-5'>軟件</b><b class='flag-5'>測(cè)試</b>VS一般<b class='flag-5'>軟件</b><b class='flag-5'>測(cè)試</b>

    幾款常見(jiàn)的嵌入式軟件測(cè)試工具

    說(shuō)起嵌入式軟件測(cè)試,我們先快速了解一下嵌入式軟件自身的特點(diǎn)。嵌入式
    的頭像 發(fā)表于 02-14 15:50 ?8150次閱讀
    幾款常見(jiàn)的<b class='flag-5'>嵌入式</b><b class='flag-5'>軟件</b><b class='flag-5'>測(cè)試</b>工具

    如何提高OTDR測(cè)試準(zhǔn)確性

    OTDR(光時(shí)域反射儀)是光纜線路故障定位和光纖特性測(cè)量的重要工具,提高OTDR測(cè)試準(zhǔn)確性對(duì)于確保光纜線路的穩(wěn)定運(yùn)行至關(guān)重要。以下是一些提高OTDR
    的頭像 發(fā)表于 12-31 09:25 ?1837次閱讀