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

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

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

用于驗證錯誤優(yōu)化的靜態(tài)測試用例和測試過程分析工具

星星科技指導(dǎo)員 ? 來源:嵌入式計算設(shè)計 ? 作者:Sayali Salape ? 2022-06-21 10:13 ? 次閱讀

效率和質(zhì)量在任何領(lǐng)域都很重要,軟件驗證也不例外。“靜態(tài)測試用例和測試過程分析工具”提高了驗證項目中工件的質(zhì)量,并有助于糾正其中引入的人為錯誤。

介紹:

客觀的:

在航空電子領(lǐng)域,安全關(guān)鍵軟件必須通過 DO-178B/C 合規(guī)方式遵守聯(lián)邦航空法規(guī)。航空無線電技術(shù)委員會 (RTCA) 和歐洲民用航空設(shè)備組織 (EUROCAE) 聯(lián)合開發(fā)了DO-178 機載系統(tǒng)和設(shè)備認證中的軟件注意事項。DO-178B/C 是處理機載系統(tǒng)中使用的安全關(guān)鍵軟件的安全性的指南,旨在滿足適航系統(tǒng)的需求。機載系統(tǒng)中使用的軟件必須滿足標(biāo)準(zhǔn)和相關(guān)認證目標(biāo)。

DO-178B/C 的目標(biāo)之一是“對軟件產(chǎn)品進行符合性審查”。同行評審的目的是確保完成軟件生命周期,并交付優(yōu)質(zhì)產(chǎn)品進行認證。在同行評審過程中,評審者必須評審在評審過程中添加的所有工件,并確保這些工件沒有缺陷。如果發(fā)現(xiàn)任何缺陷,審核者需要將其作為發(fā)現(xiàn)來捕獲。

在下一步中,實施者必須針對這些缺陷提供適當(dāng)?shù)慕鉀Q方案。在進行航空電子軟件驗證時,我們的團隊遇到了許多與拼寫錯誤、同一測試(或同一單元)內(nèi)重復(fù)要求、冗余空格(前導(dǎo)、尾隨、單詞之間等)、HLR-to -LLR 可追溯性,以及缺少特定要求的測試用例。

審查者和實施者都需要花費大量時間來捕捉和解決這些發(fā)現(xiàn)。如果工件數(shù)量增加,識別和解決此類錯誤所需的時間也會增加。因此,為了避免此類發(fā)現(xiàn),我們的團隊提出了“靜態(tài)測試用例和測試過程分析工具”。該工具是用 Python 開發(fā)的,可以捕獲上述錯誤。它有助于實施者在初始階段修復(fù)此類錯誤,并有助于減少審查過程的時間。

概述:

開發(fā)靜態(tài)測試用例和測試過程分析工具的主要目標(biāo)是盡量減少用戶在搜索拼寫錯誤的單詞、空格、需求可追溯性問題(在 HLR 和 LLR 之間)和丟失的測試用例(未測試的需求)方面的工作量。

在這里,測試用例在 excel 或文本文件中開發(fā)并添加到工具中。測試用例包含測試用例 ID、低級和高級需求的跟蹤、測試用例的目標(biāo)以及包含輸入/輸出的測試步驟以及每個步驟的目的。

手動生成的文檔必然存在容易被忽略的錯誤。但是,該工具會掃描整個文檔并識別文本中的拼寫錯誤、文本中存在的額外空格以及連續(xù)的重復(fù)單詞。它還檢查測試用例文件名和測試用例 ID 的命名約定,并將其記錄在要顯示的文本文件中。

雖然,excel提供了檢查文本拼寫的功能。它遍歷每個單詞并需要更多時間,而該工具可以直接顯示錯誤及其位置。

分析需求可追溯性和定位缺失的測試用例是該工具的另一個特點。在驗證中,需求覆蓋率是一個非常重要的方面,也是 DO-178B/C 標(biāo)準(zhǔn)的核心目標(biāo)之一。DO-178B/C 第 A-7.4 節(jié)和 A-4.6 節(jié)的目標(biāo)分別是“實現(xiàn)低級需求的測試覆蓋”和“低級需求可追溯至高級需求”。

工程師必須檢查需求是否經(jīng)過測試,以及每個低級需求 (LLR) 是否都有相應(yīng)的高級需求 (HLR) 可追溯。靜態(tài)測試用例和測試過程分析工具從測試用例文件中收集數(shù)據(jù)并維護 LLR 和 HLR 列表,以便用戶可以輕松查看并交叉檢查 LLR 到 HLR 的可追溯性。

該工具檢查每個 LLR 是否有與之關(guān)聯(lián)的測試,并記錄同一單元格中 LLR 和 HLR 的重復(fù)項,幫助用戶最大限度地減少檢查整個測試文件的工作量。

設(shè)計細節(jié):

靜態(tài)測試用例和測試過程分析工具主要分為兩部分:1)需求追溯分析,2)發(fā)現(xiàn)拼寫錯誤、空行、多余的空格和錯誤的測試用例ID(靜態(tài)分析和清理)。

在需求追溯分析部分,.xlsx 中的測試用例和 .csv 中被測模塊的需求列表作為該工具的輸入提供。它會生成包含 LLR 和相關(guān)測試 ID 的 CSV 文件、包含測試 ID、HLR、LLR 的解析數(shù)據(jù)的 excel 文件,以及帶有 LLR 和 HLR 的任何重復(fù)項的文本文件。

poYBAGKxKVOAZNTlAAC3ZBDjRXc313.png

圖 2.1:工具的需求追溯分析功能

該工具的需求可追溯性分析部分執(zhí)行以下功能:

HLR 和 LLR 之間的可追溯性 —— CSV 格式的測試用例文件和被測模塊的需求列表作為輸入提供給為檢查需求可追溯性而開發(fā)的功能。它根據(jù)測試用例 ID、LLR 和 HLR 解析測試用例文件,并將其放入新創(chuàng)建的 xlsx 文件中。輸入 CSV 文件包含特定模塊的要求列表。

需求測試可追溯性 ——該函數(shù)從 CSV 文件中讀取需求并將它們搜索到已解析的 HLR 和 LLR xlsx 中。如果 LLR 存在于已解析的工作表、LLR 和 HLR 中,它會捕獲相應(yīng)的測試用例 ID。該工具創(chuàng)建一個新的 CSV 并在其中寫入 LLR 及其各自的測試用例 ID。如果 LLR 不存在,則會導(dǎo)致字符串顯示“需求未測試”。

重復(fù)需求識別 - 該工具識別解析的 HLR LLR xlsx 文件中的單元格是否包含重復(fù)的 HLR 或 LLR,并在文本文件中記錄這些需求。

在工具的靜態(tài)分析和清理部分,提供一個或多個不同格式的測試文件(例如 .xlsx 或 .txt)作為輸入,這些錯誤的結(jié)果記錄在一個文本文件中。

pYYBAGKxKVmAQnnDAABsykq0_Uk821.png

圖 2.2:工具的靜態(tài)分析和清理功能

靜態(tài)分析和清理部分執(zhí)行以下功能:

捕獲靜態(tài)錯誤(拼寫錯誤、多余的空格、連續(xù)重復(fù)的單詞等)——用戶可以選擇一個或多個測試用例文件并將它們作為輸入提供給檢查測試用例文件中的靜態(tài)錯誤的函數(shù)。該工具檢查測試用例文件名和測試 ID 名稱是否符合指南,并在文本文件中記錄所有錯誤。它還報告測試用例文件中未使用的行。

結(jié)果:

該工具生成四個結(jié)果文件:

靜態(tài)錯誤報告 (.txt)

HLR 和 LLR 之間的可追溯性報告 (.xlsx)

需求和測試之間的可追溯性報告 (.csv)

重復(fù)要求 (.txt)

以下片段可幫助用戶了解該工具如何工作并產(chǎn)生結(jié)果。

poYBAGKxKV-Add92AAB20EK30v0587.png

圖 3.1:測試用例中的靜態(tài)錯誤報告

poYBAGKxKWWAG1-wAACJi92274A922.png

圖 3.2:HLR 和 LLR 之間的可追溯性報告

pYYBAGKxKWyASMy6AACIol64VWM804.png

圖 3.3:需求和測試之間的可追溯性報告

pYYBAGKxKXOAWjhNAAA_zjBCilA897.png

圖 3.4:顯示重復(fù)需求的報告

靜態(tài)測試用例和測試過程分析工具與 C# 開發(fā)的 GUI 的集成:

我們已經(jīng)成功地將我們團隊創(chuàng)建的靜態(tài)測試用例和測試過程分析工具與另一個團隊實現(xiàn)的 GUI 工具集成在一起。挑戰(zhàn)在于 GUI 工具是用 C# 實現(xiàn)的,而靜態(tài)測試用例和測試過程分析工具是用 Python 實現(xiàn)的。

集成兩者的想法使用戶能夠保持他們一直在使用的相同 GUI,并具有用于檢查他們正在處理的 TC 中的靜態(tài)錯誤的附加功能。集成過程包括啟用 python 腳本以提供與基于 C# 的 GUI 的接口(即,使函數(shù)以測試用例列表作為參數(shù)在命令行上執(zhí)行),從 C# 調(diào)用 python 腳本,以及從 C# 執(zhí)行文件操作生成日志文件。

以下是此集成的功能:

節(jié)省單獨操作工具的開銷

GUI工具本身提供了選擇TC、執(zhí)行工具、分析報告等所有界面,節(jié)省了工程師執(zhí)行每個步驟的時間

執(zhí)行活動與 GUI 工具中的時間戳(以活動日志的形式)一起監(jiān)控,讓用戶知道執(zhí)行是如何工作的

案例分析:

如引言中所述,如果在實施階段沒有發(fā)現(xiàn)和解決錯誤,則在審查過程中糾正錯誤的實施和審查工作會更大。本案例研究包括同行評審過程中確定的一項發(fā)現(xiàn)以及解決該問題所需時間的估計。下面提供的分析顯示了在此工具的幫助下可以節(jié)省多少實施和審查時間。

同行評審結(jié)果描述:

清除單詞“contrl”的所有拼寫錯誤,即測試 1 中的目的陳述 - “Slider contrl”應(yīng)該是“Slider control”。

工件需要重命名。根據(jù)指南重命名它。

描述大概時間

大約。是時候讓審閱者發(fā)現(xiàn)錯誤并記錄下來了。5分鐘。

大約。是時候讓實施者進行清理了。1分鐘。

大約。實施者提交更改、重新生成日志和響應(yīng)解決方案的時間。10 分鐘。

總周轉(zhuǎn)時間15 分鐘。

現(xiàn)在,如果在實施時發(fā)現(xiàn)相同的錯誤,它可以在不到 5 分鐘的時間內(nèi)修復(fù)。

表 5.1:工具的有效性

優(yōu)點:

該工具的有效性隨著多個工件和多個 TC 的審查而增加

將修復(fù)錯誤的周轉(zhuǎn)時間縮短 70%

減少與拼寫、命名約定和 HLR-LLR 可追溯性問題相關(guān)的發(fā)現(xiàn)數(shù)量

未來范圍:

它將 LLR 和相應(yīng)的 HLR 作為需求管理工具的輸入,并檢查測試用例是否包含正確的 LLR 到 HLR 可追溯性。

基于解析的 LLR,它生成一個 TC 模板,該模板將根據(jù)需求準(zhǔn)備好一些基本字段,如目標(biāo)、目的、輸入/輸出。

支持以 .c、.py 或 .xml 格式手動創(chuàng)建的測試程序文件。

支持 pdf 標(biāo)記。

結(jié)論:

該工具的目的是通過消除需求可追溯性問題和錯誤(例如空格、重復(fù)單詞、拼寫錯誤的單詞和命名約定)來生成健壯或高質(zhì)量的工件。它可以節(jié)省大約 10 分鐘。對于每個工件。

當(dāng)有多個工件時,該工具會更有效,并節(jié)省大約 70% 的周轉(zhuǎn)時間。通過持續(xù)使用該工具,我們的團隊消除了與上述所有錯誤相關(guān)的發(fā)現(xiàn),顯著提高了工件質(zhì)量和工作效率。

審核編輯:郭婷

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

    關(guān)注

    3

    文章

    662

    瀏覽量

    39789
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4801

    瀏覽量

    84865
收藏 人收藏

    評論

    相關(guān)推薦

    是德科技助力三星電子驗證FiRa 2.0安全測距測試用

    是德科技(Keysight Technologies,Inc.)成功助力三星電子,在其Exynos Connect U100芯片組上驗證了FiRa 2.0安全測試用。此次驗證得益于是
    的頭像 發(fā)表于 11-18 10:08 ?215次閱讀

    什么是回歸測試_回歸測試測試策略

    ? 1、什么是回歸測試 回歸測試(Regression testing) 指在發(fā)生修改之后重新測試先前的測試以保證修改的正確性。理論上,軟件產(chǎn)生新版本,都需要進行回歸
    的頭像 發(fā)表于 11-14 16:44 ?323次閱讀

    信令測試儀器的技術(shù)原理和應(yīng)用場景

    過程中,信令測試儀器用于定位和解決系統(tǒng)中的故障和問題。通過對信令的測試分析,可以幫助找到故障的原因和發(fā)生的場景,提供故障排查和修復(fù)的指導(dǎo)。 通信系統(tǒng)性能
    發(fā)表于 10-31 14:45

    端到端測試用怎么寫

    測試方法,旨在驗證整個應(yīng)用程序從前端到后端的流程是否能夠按照預(yù)期工作。它涉及多個系統(tǒng)組件和接口的交互,確保業(yè)務(wù)流程的完整性和正確性。 二、編寫端到端測試用的步驟 需求
    的頭像 發(fā)表于 09-20 10:29 ?515次閱讀

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

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

    恒訊科技分析:如何測試海外靜態(tài)IP服務(wù)的穩(wěn)定性和速度?

    測試海外靜態(tài)IP服務(wù)的穩(wěn)定性和速度可以通過以下步驟進行: 1、選擇測試工具:使用網(wǎng)絡(luò)測試工具,如ping命令、traceroute(或 racert)、網(wǎng)絡(luò)速度
    的頭像 發(fā)表于 08-14 14:58 ?386次閱讀

    鑒源實驗室·ISO 26262中測試用的得出方法-等價類的生成和分析

    標(biāo)準(zhǔn)規(guī)范中給出了單元、集成、系統(tǒng)測試各階段的建議測試使用方法,設(shè)計生成測試用的建議方法包括需求分析、等價類的生成和
    的頭像 發(fā)表于 07-30 15:37 ?566次閱讀
    鑒源實驗室·ISO 26262中<b class='flag-5'>測試用</b><b class='flag-5'>例</b>的得出方法-等價類的生成和<b class='flag-5'>分析</b>

    是德科技獲得窄帶非地面網(wǎng)絡(luò)標(biāo)準(zhǔn)的新測試用驗證

    是德科技(Keysight Technologies,Inc.)日前宣布,該公司針對3GPP Rel-17標(biāo)準(zhǔn)中關(guān)于NB-IoT NTN技術(shù)的新一致性測試用獲得驗證通過。這些測試用
    的頭像 發(fā)表于 07-26 14:13 ?737次閱讀

    動態(tài)追溯方法:徹底革新軟件測試

    動態(tài)追溯方法為解決軟件開發(fā)中追溯的挑戰(zhàn)提供了創(chuàng)新的解決方案。通過自動和動態(tài)地鏈接需求和測試用,使測試過程顯著提高效率和精確度。該方法減少了手工操作,改善了故障分析,并確保了持續(xù)的追溯
    的頭像 發(fā)表于 07-05 17:40 ?434次閱讀
    動態(tài)追溯方法:徹底革新軟件<b class='flag-5'>測試</b>

    單元測試、集成測試自動化工具

    HookCode?直接使用目標(biāo)機代碼進行單元測試 聯(lián)合靜態(tài)解析工具[CasePlayer2],提供C0(語句),C1(判定),MC/DC覆蓋率報告,優(yōu)化
    的頭像 發(fā)表于 06-26 13:41 ?473次閱讀
    單元<b class='flag-5'>測試</b>、集成<b class='flag-5'>測試</b>自動化<b class='flag-5'>工具</b>

    ADC靜態(tài)測試全流程:以斜坡測試(一)

    如何利用該系統(tǒng)進行精確的ADC靜態(tài)參數(shù)測試。我們將以斜坡測試(Ramp test)這一典型測試流程為,指導(dǎo)您高效地使用我們的ATX
    的頭像 發(fā)表于 06-14 10:11 ?1044次閱讀
    ADC<b class='flag-5'>靜態(tài)</b><b class='flag-5'>測試</b>全流程:以斜坡<b class='flag-5'>測試</b>為<b class='flag-5'>例</b>(一)

    接口測試工具有哪些種類

    接口測試是軟件測試的一個重要環(huán)節(jié),主要用于驗證系統(tǒng)各模塊之間的交互是否符合預(yù)期。隨著軟件行業(yè)的快速發(fā)展,接口測試工具也不斷涌現(xiàn),為
    的頭像 發(fā)表于 05-30 15:07 ?777次閱讀

    DEKRA被CSA指定為Zigbee統(tǒng)一測試工具開發(fā)和優(yōu)化新功能和測試用

    DEKRA德凱被CSA聯(lián)盟(Connectivity Standards Alliance,CSA)指定負責(zé)為Zigbee統(tǒng)一測試工具(Zigbee Unified Test Harness,ZUTH)開發(fā)和優(yōu)化新功能和測試用
    的頭像 發(fā)表于 04-09 14:10 ?551次閱讀

    PTCRB的測試用類認證等級分類介紹

    PTCRB的測試用類認證等級CategoryA/B/EA類項:測試用在商用系統(tǒng)上經(jīng)過完全驗證;必測項且需要結(jié)果為PASSB類項:測試用
    的頭像 發(fā)表于 03-14 16:46 ?427次閱讀
    PTCRB的<b class='flag-5'>測試用</b>類認證等級分類介紹

    是德科技首批3GPP Release 16 16/32測試用獲得批準(zhǔn)

    本次驗證涵蓋單個和多個預(yù)編碼矩陣指示符測試用,主要面向在頻分雙工和時分雙工頻段上運行的 16/32 通道發(fā)射機
    的頭像 發(fā)表于 02-21 14:14 ?448次閱讀