99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

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

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

對FEY(Full-Expectation-Yet)方法的介紹

北匯信息POLELINK ? 2023-07-25 17:39 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

通過關(guān)注輸出和行為驗(yàn)證,了解FEY(Full-Expectation-Yet)方法如何徹底改變軟件測試。通過確保期望值的存在,這種方法提高了測試覆蓋度、可靠性和整體軟件質(zhì)量。深入了解實(shí)現(xiàn)FEY方法的關(guān)鍵見解、挑戰(zhàn)和好處,以釋放測試工作的真正潛力。

在軟件測試領(lǐng)域,一個(gè)常見的挑戰(zhàn)是在測試創(chuàng)建期間對每個(gè)輸入定義期望值的疏忽。這可能導(dǎo)致不完整或無效的測試覆蓋,導(dǎo)致未檢測到的問題從裂縫中溜走。在本文中,我們將探討導(dǎo)致此情況的潛在問題,并介紹解決這些挑戰(zhàn)的解決方案。

測試中的典型問題:

軟件規(guī)范之間的差距:軟件規(guī)范中不可能明確的描述每一種每個(gè)邊界情況或場景,因此這些在測試創(chuàng)建過程中可能被忽視。

測試有效性的喪失:隨著軟件的變化,測試可能會(huì)過時(shí)并失去其相關(guān)性,僅通過視覺檢查來確定其準(zhǔn)確性是很困難的。

軟件接口的復(fù)雜性:軟件系統(tǒng)通常有許多接口,因此在每個(gè)時(shí)間點(diǎn)為每個(gè)輸入定義清晰的期望值具有挑戰(zhàn)性。

大型的自動(dòng)化項(xiàng)目:在大規(guī)模的自動(dòng)化項(xiàng)目中,測試人員可能會(huì)忽略沒有定義期望值的情況或測試矢量,從而導(dǎo)致不完整的測試覆蓋。

解決方案——增加一個(gè)額外的監(jiān)控層

為了應(yīng)對這些挑戰(zhàn),我們建議實(shí)現(xiàn)一個(gè)額外的監(jiān)控層,以確保每個(gè)接口都有期望值。

這是通過為每個(gè)接口創(chuàng)建專用變量來實(shí)現(xiàn)的,該變量初始化為默認(rèn)值“false”。然后,這個(gè)變量會(huì)在測試報(bào)告中顯式地、自動(dòng)地突出顯示。如果在測試的任何給定點(diǎn)都沒有定義期望值,那么測試將自動(dòng)失敗。這讓測試人員能夠在每次測試運(yùn)行后快速識(shí)別未定義期望值的場景、輸入或情況。

注重測試結(jié)果的方法特別適用于:

安全關(guān)鍵行業(yè):諸如汽車、醫(yī)療、航空航天和其他安全關(guān)鍵領(lǐng)域的行業(yè),在這些行業(yè)中,正確的行為和軟件輸出的準(zhǔn)確性至關(guān)重要。

具有復(fù)雜軟件的開發(fā)團(tuán)隊(duì):開發(fā)具有復(fù)雜功能、眾多接口和復(fù)雜計(jì)算的軟件項(xiàng)目的團(tuán)隊(duì),這些項(xiàng)目需要對輸出進(jìn)行徹底的測試和驗(yàn)證。

測試經(jīng)理和工程師:通過有效的測試策略負(fù)責(zé)確保軟件質(zhì)量和可靠性的專業(yè)人員。這種方法為他們提供了一種系統(tǒng)的方法來監(jiān)測和驗(yàn)證預(yù)期的輸出。

質(zhì)量保證團(tuán)隊(duì):QA團(tuán)隊(duì)試圖通過結(jié)合涵蓋輸入和輸出的綜合方法來增強(qiáng)他們的測試過程,從而提高整體測試的覆蓋度和有效性。

測試自動(dòng)化專家:測試自動(dòng)化方面的專家,他們的目標(biāo)是利用自動(dòng)化工具和技術(shù)來簡化和優(yōu)化測試過程,并特別關(guān)注輸出和行為驗(yàn)證。

應(yīng)用該方法的領(lǐng)域

軟件輸出/計(jì)算的評(píng)估是測試的核心。測試用例是通過還是失敗完全取決于期望值,因?yàn)檫@些值定義了軟件的預(yù)期行為。因此,盡可能全面地描述這些期望值是至關(guān)重要的。

為了更好地理解這一事實(shí),這里有一個(gè)簡短的邊注

測試自動(dòng)化的基本原則:

  • 一個(gè)測試用例必須接受至少一個(gè)評(píng)估,以被評(píng)估為成功或失敗。如果沒有可用的評(píng)估,測試用例在TPT中被判定為無結(jié)果的(Inconclusive)。
  • 如果所有的評(píng)估都通過了,那么測試用例就被認(rèn)為是成功的(Passed)。
  • 如果至少有一個(gè)評(píng)估失敗,那么測試用例被認(rèn)為是失敗的(Failed)。
  • 如果一個(gè)測試用例不能被執(zhí)行,它會(huì)被標(biāo)記為執(zhí)行錯(cuò)誤(ExecutionErrors)。

wKgaomS_l6iAbj5dAABUSH-m3ts852.png

用一個(gè)簡短的例子說明這種合理邏輯的缺點(diǎn)。

給一個(gè)具有許多輸出的測試對象創(chuàng)建一個(gè)測試用例。測試用例包含許多測試條件(步驟),并在許多情景下(高覆蓋度)刺激測試對象。現(xiàn)在的問題是:測試用例只包含與行為無關(guān)的相關(guān)評(píng)估。因此,即使測試的含量很低或沒有意義,也會(huì)被報(bào)告為成功。

這是非常不利的。但有解決辦法。我們稱這種方法為Full-Expectation-Yet。

簡而言之,F(xiàn)ull-Expectation-Yet(FEY)方法是:

為被測系統(tǒng)的每個(gè)輸出創(chuàng)建一個(gè)檢查變量。該變量的目的是在任何時(shí)候檢查測試對象的輸出是否存在預(yù)期值。

因此,對于每個(gè)樣本(帶有輸入數(shù)據(jù)的測試向量),測試變量的默認(rèn)值為false。只有當(dāng)輸出存在指定的期望值時(shí),默認(rèn)值才會(huì)設(shè)置為true。

注:在TPT中,評(píng)估可以定義為獨(dú)立于測試數(shù)據(jù)的自定義實(shí)體。評(píng)估在測試執(zhí)行后自動(dòng)運(yùn)行。

TPT將自動(dòng)執(zhí)行對變量的求值以生成報(bào)告。如果存在沒有期望值的時(shí)間間隔(樣本),則變量保留默認(rèn)值(false),并且測試用例失敗。在這種情況下,測試對象的期望值是缺失的,它可以由測試人員來補(bǔ)充。

實(shí)施FEY方法的3個(gè)步驟:

  • 步驟1 -為測試對象的每個(gè)輸出創(chuàng)建一個(gè)變量
  • 步驟2 -定義每個(gè)變量,以值false開始
  • 步驟3 -在每次評(píng)估期望值時(shí)設(shè)置相應(yīng)的變量值為true

結(jié)果

由于對于每個(gè)輸出,變量的初始值為False,并且只有在對輸出進(jìn)行測試時(shí)才設(shè)置為true,因此,如果測試對象的刺激顯示了測試中尚未指定的行為,則測試將失敗。

為了檢查盡可能多的情況,我們建議使用代碼覆蓋率指標(biāo)MC/DC

舉個(gè)例子

為了展示FEY方法的實(shí)用性和有效性,讓我們舉一個(gè)汽車行業(yè)的例子。想象一下,一個(gè)開發(fā)團(tuán)隊(duì)正在為自動(dòng)駕駛汽車開發(fā)高級(jí)駕駛輔助系統(tǒng)(ADAS)。

通過實(shí)現(xiàn)FEY方法,團(tuán)隊(duì)可以為每個(gè)輸出創(chuàng)建專用變量,例如碰撞檢測、車道偏離警告和自適應(yīng)巡航控制。通過為每個(gè)輸出定義明確的期望值,團(tuán)隊(duì)可以全面測試這些關(guān)鍵功能的行為和準(zhǔn)確性。

這確保了ADAS系統(tǒng)的可靠運(yùn)行,為乘客和其他道路使用者提供了更高的安全性。這些例子突出了FEY方法在軟件行為至關(guān)重要的行業(yè)中的實(shí)際好處和實(shí)際應(yīng)用。

這種有條不紊的方法確保了:

  • 測試中會(huì)考慮所有情況/場景
  • 對于每種情況和每種結(jié)果,測試中都有一個(gè)期望值
  • 如果測試對象發(fā)生變化,可確保所有測試的有效性

注:在當(dāng)前的實(shí)現(xiàn)中,輸出和測試變量之間沒有直接耦合。因此,必須在審查過程中檢查實(shí)現(xiàn)是否使用錯(cuò)誤。

需要什么來實(shí)現(xiàn)?

您所需要的只是一個(gè)具有以下功能的自動(dòng)化測試:

  • 代碼覆蓋度的度量(至少是決策覆蓋度,MC/DC更好)
  • 測試數(shù)據(jù)期望值獨(dú)立定義
  • 離散時(shí)間評(píng)估(每個(gè)樣本至少一次評(píng)估)
  • 每次測試運(yùn)行的整體評(píng)估

逐步實(shí)現(xiàn)FEY方法(使用TPT)——參考實(shí)現(xiàn)燈控制的例子

  • 連接被測系統(tǒng)
    • 創(chuàng)建評(píng)估行為的評(píng)估
    • 創(chuàng)建測試數(shù)據(jù)(最好是基于需求)
    • 實(shí)現(xiàn)監(jiān)控層
      • 記錄測試對象的接口
      • 為每個(gè)輸出創(chuàng)建檢查變量
      • 通過檢查變量擴(kuò)展評(píng)估
    • 運(yùn)行測試并檢查覆蓋度(決策或MC/DC) ->使用TPT的模塊TASMO,您可以通過代碼刺激所有路徑和條件自動(dòng)生成測試數(shù)據(jù)。
    • 添加測試數(shù)據(jù)以實(shí)現(xiàn)100%的代碼覆蓋度
    • 如果檢查變量顯示某些測試數(shù)據(jù)沒有定義期望值,則創(chuàng)建額外的評(píng)估。

wKgaomS_l9-AKUCcAAEEyT1u7vQ212.pngwKgZomS_l9-ALcfQAACoSKQ9o84815.pngwKgZomS_l9-AKX39AAEKdFnjACE261.pngwKgaomS_l9-AXF8TAADgERupH9s074.pngwKgZomS_l9-AYj_KAACVhA85QDA438.pngwKgaomS_l9-AbPqaAACq2-opwXU999.pngwKgZomS_l9-AJGgJAAEDVk8_Yik437.pngwKgaomS_l9-APhT9AACG-TN6t4Y868.pngwKgZomS_l-CAKXGDAAClcuPW8GM141.png

FEY方法的優(yōu)缺點(diǎn)

FEY方法的優(yōu)勢

  • 確保測試的有效性(對于每種情況,對測試項(xiàng)目都有明確的期望)
  • 通過結(jié)合覆蓋測量檢測規(guī)范差距來提高安全性,例如,對于具有大量變體的駕駛員輔助功能
  • 非常簡單易懂的實(shí)現(xiàn)->易于驗(yàn)證的審查
  • 這種方法是兼容的,并且很好地補(bǔ)充了確保測試用例和需求可追溯性的方法

FEY方法的弱點(diǎn)

  • 如果實(shí)現(xiàn)被誤用(通過審查實(shí)現(xiàn)進(jìn)行保護(hù)),其重要性就會(huì)降低。
  • 未能發(fā)現(xiàn)相互矛盾的需求,例如,對于相同的情況,對于相同的結(jié)果,存在多個(gè)期望值(通過一般測試方法來保證——對于相同的測試向量,不同的期望值導(dǎo)致至少一次評(píng)估失敗)
  • 如果代碼的行為受到參數(shù)的影響,則不考慮參數(shù)化(通過多參數(shù)執(zhí)行來保證)

總結(jié)

在本文中,我們探討了與在軟件測試中定義期望值相關(guān)的挑戰(zhàn),并介紹了一種稱為Full-Expectation-Yet(FEY)方法的解決方案。測試的核心在于評(píng)估軟件的輸出和計(jì)算,而期望值的存在對于決定測試用例的成功或失敗至關(guān)重要。

FEY方法通過增加一個(gè)額外的監(jiān)控層來解決傳統(tǒng)測試方法的缺點(diǎn)。它涉及到為被測系統(tǒng)的每個(gè)輸出創(chuàng)建專用變量,初始化為默認(rèn)值“false”。然后在測試執(zhí)行期間評(píng)估這些變量,如果沒有定義預(yù)期的值,測試用例就會(huì)失敗。這種方法確保在測試中涵蓋所有情況和結(jié)果,從而提供了一種系統(tǒng)的方法來監(jiān)測和驗(yàn)證預(yù)期的輸出。

FEY方法特別適用于具有安全關(guān)鍵開發(fā)的行業(yè)、從事復(fù)雜軟件項(xiàng)目的開發(fā)團(tuán)隊(duì)、負(fù)責(zé)確保質(zhì)量的測試經(jīng)理和工程師,以及尋求增強(qiáng)其測試過程的質(zhì)量保證團(tuán)隊(duì)。通過關(guān)注輸出和行為驗(yàn)證,這種方法提高了整體的測試覆蓋度、有效性和可靠性。

雖然FEY方法提供了幾個(gè)優(yōu)點(diǎn),例如確保測試有效性和檢測規(guī)范差距,但它也有缺點(diǎn)。實(shí)現(xiàn)的誤用、檢測矛盾需求的失敗以及對參數(shù)化的有限考慮是需要解決的一些挑戰(zhàn)。

通過實(shí)現(xiàn)FEY方法,軟件測試可以發(fā)生革命性的變化,導(dǎo)致更全面和有效的測試實(shí)踐,從而有助于提高軟件質(zhì)量和可靠性。

而TPT就是能使用FEY方法進(jìn)行軟件測試的嵌入式軟件模型動(dòng)態(tài)測試工具,如果您正苦于測試效率不高、測試過程冗雜的煩惱,歡迎聯(lián)系北匯信息獲取TPT試用,助力測試效率的提升。

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

    關(guān)注

    5152

    文章

    19676

    瀏覽量

    317725
  • 軟件
    +關(guān)注

    關(guān)注

    69

    文章

    5154

    瀏覽量

    89234
  • 嵌入式軟件測試
    +關(guān)注

    關(guān)注

    2

    文章

    27

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    想在bsp工程打印浮點(diǎn)數(shù),結(jié)果找不到rt_vsnprintf_full軟件包,怎么解決?

    想在bsp工程打印浮點(diǎn)數(shù),結(jié)果找不到rt_vsnprintf_full軟件包 問題復(fù)現(xiàn) 使用env-windows-v2.0.0 執(zhí)行pkgs --upgrade 打開menuconfig找不到rt_vsnprintf_full軟件包 使用/搜索找到軟件包但顯示紅色,不
    發(fā)表于 06-13 07:48

    開源鴻蒙開發(fā)必備!OpenHarmony替換Full SDK全攻略

    本文介紹開源鴻蒙OpenHarmony替換FullSDK的方法,演示設(shè)備為觸覺智能PurplePiOH鴻蒙開發(fā)板獲取FullSD
    的頭像 發(fā)表于 06-06 18:11 ?256次閱讀
    開源鴻蒙開發(fā)必備!OpenHarmony替換<b class='flag-5'>Full</b> SDK全攻略

    數(shù)字IC設(shè)計(jì):方法、技巧與實(shí)踐

    設(shè)計(jì)的流程逐步介紹前端設(shè)計(jì)需要的知識(shí)。其中第3章為構(gòu)架設(shè)計(jì),比較詳盡地介紹了構(gòu)架設(shè)計(jì)的任務(wù),一些應(yīng)當(dāng)考慮的問題和構(gòu)架設(shè)計(jì)的方法。第4章是RTL設(shè)計(jì)與仿真。首先介紹的是一些RTL的設(shè)計(jì)規(guī)
    發(fā)表于 05-28 16:06

    芯片制造中的應(yīng)變硅技術(shù)介紹

    本文介紹了在芯片制造中的應(yīng)變硅技術(shù)的原理、材料選擇和核心方法
    的頭像 發(fā)表于 04-15 15:21 ?847次閱讀
    芯片制造中的應(yīng)變硅技術(shù)<b class='flag-5'>介紹</b>

    在IMX93自定義構(gòu)建期間運(yùn)行bitbake imx image full時(shí)遇到報(bào)錯(cuò)怎么解決?

    在 IMX93 自定義構(gòu)建期間運(yùn)行 bitbake imx image full 時(shí),我們遇到錯(cuò)誤。您能否盡早提供解決方案?我們使用的是 imx 6.6.52 版本。
    發(fā)表于 04-10 06:29

    封裝失效分析的流程、方法及設(shè)備

    本文首先介紹了器件失效的定義、分類和失效機(jī)理的統(tǒng)計(jì),然后詳細(xì)介紹了封裝失效分析的流程、方法及設(shè)備。
    的頭像 發(fā)表于 03-13 14:45 ?889次閱讀
    封裝失效分析的流程、<b class='flag-5'>方法</b>及設(shè)備

    SiC碳化硅MOSFET功率器件雙脈沖測試方法介紹

    碳化硅革新電力電子,以下是關(guān)于碳化硅(SiC)MOSFET功率器件雙脈沖測試方法的詳細(xì)介紹,結(jié)合其技術(shù)原理、關(guān)鍵步驟與應(yīng)用價(jià)值,助力電力電子領(lǐng)域的革新。
    的頭像 發(fā)表于 02-05 14:34 ?807次閱讀
    SiC碳化硅MOSFET功率器件雙脈沖測試<b class='flag-5'>方法</b><b class='flag-5'>介紹</b>

    淺談制備精細(xì)焊粉(超微焊粉)的方法

    制備精細(xì)焊粉的方法有多種,以下介紹五種常用的方法
    的頭像 發(fā)表于 01-07 16:00 ?384次閱讀
    淺談制備精細(xì)焊粉(超微焊粉)的<b class='flag-5'>方法</b>

    RK3568內(nèi)置MCU開發(fā)介紹之二

    本文重點(diǎn)介紹RK3568內(nèi)置的MCU與AP之間的通信功能,首先介紹RPMsg的框架,然后介紹MCU端RPMSG的構(gòu)建方法,最后介紹AP端的R
    的頭像 發(fā)表于 12-16 09:09 ?1333次閱讀
    RK3568內(nèi)置MCU開發(fā)<b class='flag-5'>介紹</b>之二

    電機(jī)維修方法介紹 電機(jī)保養(yǎng)攻略分享

    作。下面小編介紹常見電機(jī)故障和電機(jī)維修方法以及電機(jī)保養(yǎng)方面的知識(shí)。 一、電機(jī)維修方法 1、出現(xiàn)電機(jī)異常發(fā)熱怎么維修 維修處理的方法一般為更換電機(jī),或進(jìn)行維護(hù)保養(yǎng)。 2、電機(jī)的空載電流大
    的頭像 發(fā)表于 11-26 01:08 ?2200次閱讀

    工控機(jī)重裝系統(tǒng)的方法介紹

    ? 工控機(jī)怎么重裝系統(tǒng),工控機(jī)重裝系統(tǒng)的方法介紹攻略 ? 首先看下自己購買的什么工控機(jī),是工業(yè)平板電腦還是常規(guī)的工控主機(jī),我們此篇介紹的是工控主機(jī)的裝機(jī)辦法,看下是什么時(shí)候出的工控主板,如果是比較
    的頭像 發(fā)表于 10-23 17:11 ?1391次閱讀

    DC/DC模擬的基本使用方法和特性確認(rèn)方法

    本篇介紹了DC/DC模擬的基本使用方法及確認(rèn)基本特性的方法。
    的頭像 發(fā)表于 08-20 17:08 ?1388次閱讀
    DC/DC模擬的基本使用<b class='flag-5'>方法</b>和特性確認(rèn)<b class='flag-5'>方法</b>

    獲得高頻輸出的方法AT技術(shù)

    獲得高頻輸出的方法(第三部:反向臺(tái)形AT型石英晶體)反向臺(tái)形AT型石英晶體的概況與特性介紹【序文】上次為止,我們介紹了使用倍頻電路和鎖相環(huán)電路,或者使用彈性表面波SAW
    的頭像 發(fā)表于 08-15 10:55 ?586次閱讀
    獲得高頻輸出的<b class='flag-5'>方法</b>AT技術(shù)

    使用THS6184做電流驅(qū)動(dòng)輸出發(fā)熱嚴(yán)重有什么方法解決嗎?

    使用THS6184做電流驅(qū)動(dòng)輸出,輸入信號(hào)為四路方波正負(fù)500mV以內(nèi),頻率為200Hz,THS6184使用Full Bias模式,同向方法,反饋端接入10K反饋電阻,正常輸出電流達(dá)到30mA時(shí),運(yùn)放溫度高達(dá)60攝氏度,請問有什么方法
    發(fā)表于 08-08 06:22

    對放大電路的分析方法介紹

    放大電路是電子技術(shù)中非常重要的組成部分,它廣泛應(yīng)用于信號(hào)處理、通信、測量等領(lǐng)域。對于放大電路的分析,通??梢苑譃橹绷鞣治龊徒涣鞣治鰞煞N情況。下面我們將介紹這兩種分析方法。 直流分析 直流分析主要關(guān)注
    的頭像 發(fā)表于 08-07 10:08 ?1305次閱讀