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

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

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

TPT中腳本評估的使用(下) 測試管理與軟件交互

北匯信息POLELINK ? 2022-07-27 15:29 ? 次閱讀

在上篇中,我們講述了TPT腳本的一些基礎(chǔ)操作,例如時間區(qū)間篩選、測試評估等等。但是僅僅掌握這些基礎(chǔ)的操作是無法滿足我們在復(fù)雜測試項目中的需求的,在本文中您將了解到TPT腳本的一些高級特性,例如測試管理、腳本封裝、與其它軟件交互等等。相信在閱讀本文之后,您將在TPT腳本使用方面更上一層樓。

文章閱讀導(dǎo)圖:

poYBAGLg46-Ab4ijAAEMxBg_E3g067.png

使用腳本對需求和報告進(jìn)行管理

使用腳本進(jìn)行測試需求管理

在軟件測試項目中,測試需求是我們工作的軸心。測試需求不僅是我們編寫測試用例與評估的重要依據(jù),同時也是測試工作完成程度的一項重要指標(biāo),那么開展測試需求管理工作就是十分重要的了。TPT在腳本中提供了許多強(qiáng)大的函數(shù)接口幫助我們進(jìn)行測試需求的管理,下圖就列舉了測試需求管理函數(shù)庫中的一個常用模塊——REQUIREMENTS模塊的功能。

pYYBAGLg49WAXtnnAACKTodn0MY231.png

我們可以通過checked()對測試需求是否滿足進(jìn)行檢查,檢查的結(jié)果會反映到測試結(jié)果之中。

pYYBAGLg4-WAFI8lAABhKHHHDuo515.pngpYYBAGLg4-6ASGJ8AAEIml_p7JQ772.png

之后,我們也可以使用report ()函數(shù)將我們的需求滿足結(jié)果反饋到我們的報告之中。

poYBAGLg4_uAfflxAAEhqmZHwws898.png

使用腳本進(jìn)行測試報告管理

測試報告基本是我們測試工作的最后的一個環(huán)節(jié),也是極為重要的一個環(huán)節(jié)。一份合理美觀的測試報告可以充分的體現(xiàn)測試流程和測試結(jié)果,可以將關(guān)鍵的測試數(shù)據(jù)保存下來。

TPT腳本中提供了充分的接口,讓我們按自己的需求將報告定制化。例如我們可以在報告的指定位置添加圖像、文章段落、各類信號圖像、信號表格等模塊,下圖腳本就展示了其中一些函數(shù)的用法以及執(zhí)行結(jié)果。

poYBAGLg5BuAFRlGAADtg6BffDk507.png

pYYBAGLg5CyAScS7AAA4ePA7XsQ366.png

同時在TPT16中,我們還可以為整個報告添加一些測試總述信息。注意這樣的腳本需要在測試執(zhí)行界面的Global Assessment處編寫。如下圖所示,我們通過腳本的編寫,在測試報告的Over View處添加了圖像與段落。

pYYBAGLg5DqAS__mAACPY0dkkPw652.png

pYYBAGLg5ESAcml9AABN31QbdZE015.png

使用TPT腳本與外界程序進(jìn)行交互

TPT腳本中提供了較為豐富的與外界程序進(jìn)行交互的接口,我們可以利用這些接口對TPT的功能進(jìn)行擴(kuò)展,去實現(xiàn)我們在實際項目中想要達(dá)到的效果。

在TPT腳本中調(diào)用Python標(biāo)準(zhǔn)庫

我們在TPT腳本中可以使用import;from…import…;from…import *等語句導(dǎo)入Python中的標(biāo)準(zhǔn)函數(shù)庫。由于TPT的Python版本是2.7,所以我們只能使用Python2.7中的標(biāo)準(zhǔn)庫,而其它一些擴(kuò)展庫需要通過下文(與擴(kuò)張庫進(jìn)行交互部分)中介紹的方法導(dǎo)入。

在TPT腳本中調(diào)用外部Python腳本

我們可以通過TPT腳本去調(diào)用外部的Python腳本,這樣可以對我們原有的Python腳本進(jìn)行復(fù)用,實現(xiàn)編寫一個腳本在多個評估中使用的效果。

pYYBAGLg5IOAa4tFAABXx_u62vc009.png

如圖所示,我們使用include ()這個函數(shù)調(diào)用了外部的一個腳本,這個腳本在控制臺上打印輸出一段文字。這個函數(shù)類似于C和C++#include這個語法特性,都起到了加載外部文件的作用。

值得注意的是,我們在編寫外部腳本的時候要注意其語法特性要滿足TPT內(nèi)部的語法特性,不能使用TPT中不包含的語法特性。

通過TPT腳本與MATLAB進(jìn)行交互

TPT提供了與MATLAB進(jìn)行交互的接口,我們可以通過runMScript()函數(shù)在MATLAB工作區(qū)寫入或者讀取變量,也可以去執(zhí)行M語言程序,在MATLAB中對信號進(jìn)行計算與處理,或者針對不同的測試用例對模型本身進(jìn)行改變。

poYBAGLg5JuAXVzXAABsN6U3OjU396.png

下圖是這個函數(shù)的使用示例。首先我們在MATLAB工作區(qū)創(chuàng)建了INOUT兩個變量,IN是TPT寫入MATLAB的變量,OUT是TPT從MATLAB讀取的變量。同時TPT把這個函數(shù)的第一個參數(shù)的內(nèi)容作為M腳本在MATLAB中執(zhí)行。這個M腳本的執(zhí)行結(jié)果是賦予OUT信號以IN信號的時域與值域的數(shù)值,之后將模型中的AUTO_MODE參數(shù)的值置為3。

pYYBAGLg5KeAXCPeAABMz1NeCXM200.png

除此之外,我們還可以用TPT腳本中的setMatlabSettings()函數(shù)對MATLAB平臺進(jìn)行設(shè)置,讓測試環(huán)境達(dá)到我們的要求。

通過TPT腳本與其它應(yīng)用程序或Python擴(kuò)展庫進(jìn)行交互

我們之前在腳本中調(diào)用了Python2.7的標(biāo)準(zhǔn)庫,那如何在TPT腳本中使用例如numpy、pandas、matplotlib這些較為常用的擴(kuò)展庫呢?TPT的execute()這個函數(shù)為我們提供了實現(xiàn)的可能。

我們調(diào)用execute()這個函數(shù),TPT就會自動創(chuàng)建一個我們指定的進(jìn)程,同時TPT解釋器會在execute()函數(shù)調(diào)用語句處暫停,等待外部進(jìn)程的結(jié)束。那么我們就可以通過共享內(nèi)存的方法,為TPT和外部進(jìn)程創(chuàng)建一個共同的數(shù)據(jù)緩存區(qū),通過這個緩存區(qū)實現(xiàn)TPT和外部進(jìn)程的數(shù)據(jù)交互。外部進(jìn)程結(jié)束后,我們的TPT腳本可以根據(jù)其返回的結(jié)果來進(jìn)行下一步的操作,原理如下圖所示。

poYBAGLg5L2AFqi-AACAMElSwSs074.png

整個腳本的執(zhí)行流程是TPT內(nèi)部進(jìn)程和外部進(jìn)程交叉進(jìn)行的,由于交互的速度很快,所以可以近似于是TPT內(nèi)部庫的調(diào)用,整個過程類似于“并發(fā)”這種調(diào)度方式。

TPT腳本的封裝與管理

TPT提供了對腳本進(jìn)行封裝和管理的功能。在一個項目中,有時候我們會有一些重復(fù)的計算步驟或者程序流程,這時候我們可以把這些計算步驟封裝成函數(shù),需要時我們可以對函數(shù)進(jìn)行調(diào)用,簡潔了代碼提高了效率。

同樣的,我們在項目中可能會有一些功能相似或者相互補(bǔ)充的函數(shù),這時候我們可以把這些函數(shù)進(jìn)一步封裝,把同類型的函數(shù)封裝成外部函數(shù)庫,我們在TPT中可以把這些函數(shù)庫加載進(jìn)來,方便我們的調(diào)用,加速整個項目流程。

舉個簡單的例子,如下圖所示,我們把繪圖和繪表這些固定的腳本步驟封裝成了兩個函數(shù)。通過這兩個函數(shù)的調(diào)用,我們可以輕而易舉的添加多個信號的圖像或者表格。

pYYBAGLg5NWACSElAADHfglvgPU278.png

同樣的,我們假如定義了多個與圖形繪制有關(guān)的函數(shù),我們可以進(jìn)一步的把圖形繪制的函數(shù)歸類成一個函數(shù)庫,步驟如下圖所示。這時候我們就可以在多個項目中去使用這個函數(shù)庫,或者分享給團(tuán)隊成員,提高了代碼的復(fù)用性。

poYBAGLg5OCADpt3AADxMiMkXn8610.png

我們建立自己的外部函數(shù)庫也方便我們對工程的管理。把一些固定的步驟標(biāo)準(zhǔn)化,無疑提高了整個團(tuán)隊代碼的規(guī)范性。同時,我們還可以通過Git或SVN對團(tuán)隊的腳本庫進(jìn)行管理與共享,提高了團(tuán)隊協(xié)作性。

毫無疑問,我們需要對TPT腳本進(jìn)行一定的管理,這在大型測試項目中尤為重要,有管理的腳本比沒有管理的腳本要優(yōu)越很多。

關(guān)于PikeTec和北匯信息

PikeTec公司是全球知名的基于模型的嵌入式系統(tǒng)測試工具TPT的軟件供應(yīng)商,總部位于德國柏林,其創(chuàng)始人均在戴姆勒公司擁有十多年的軟件測試經(jīng)驗。TPT產(chǎn)品曾被評為2005年戴姆勒最佳創(chuàng)新軟件,并在戴姆勒、大眾、奧迪、保時捷、通用等汽車整車廠及多家零部件企業(yè)(博世、大陸、海拉等)中得到廣泛應(yīng)用,如戴姆勒的多個車型的混合動力汽車的動力總成、電池管理控制器的測試,博世的汽油機(jī)和柴油機(jī)控制系統(tǒng)測試等。


北匯信息作為PikeTec在中國的獨(dú)家合作伙伴,致力于幫助中國客戶提升嵌入式控制系統(tǒng)的開發(fā)效率。目前,TPT已被眾多國內(nèi)知名主機(jī)廠和零部件企業(yè)認(rèn)可,在新能源(VCU/BMS/MCU)以及ADAS等領(lǐng)域中被廣泛應(yīng)用。

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

    關(guān)注

    0

    文章

    23

    瀏覽量

    6949
收藏 人收藏

    評論

    相關(guān)推薦

    TPT 20自動化全面升級,讓測試擁有更多選擇

    作者|昱佳小編|不吃豬頭肉前言隨著汽車電子技術(shù)的不斷發(fā)展和普及,汽車電子系統(tǒng)的復(fù)雜度不斷增加,對汽車電子系統(tǒng)的測試要求也越來越高,傳統(tǒng)的測試方法已經(jīng)無法滿足對系統(tǒng)功能和性能的全面測試需求。TP
    的頭像 發(fā)表于 06-20 08:25 ?161次閱讀
    <b class='flag-5'>TPT</b> 20自動化全面升級,讓<b class='flag-5'>測試</b>擁有更多選擇

    控流程工業(yè)首款A(yù)I時序大模型TPT發(fā)布

    點燃AI引擎,打造工業(yè)應(yīng)用新范式? 杭州2024年6月7日?/美通社/ --?6月5日,由中控技術(shù)傾力打造的流程工業(yè)首款A(yù)I時序大模型TPT(Time-series Pre-trained
    的頭像 發(fā)表于 06-07 14:23 ?350次閱讀
    <b class='flag-5'>中</b>控流程工業(yè)首款A(yù)I時序大模型<b class='flag-5'>TPT</b>發(fā)布

    接口測試的概念和重點是什么?

    一、接口測試的概念 接口測試是一種軟件測試方法,主要用于驗證軟件系統(tǒng)之間的交互是否符合預(yù)期。在現(xiàn)
    的頭像 發(fā)表于 05-30 15:08 ?436次閱讀

    TPT通過不同的變量組合自動生成測試用例,極大提高測試效率#Simulink

    軟件TPT
    北匯信息POLELINK
    發(fā)布于 :2024年03月09日 09:44:15

    TPT測試用例自動生成工具箱TASMO,自動生成Simulink模型測試用例#simulink

    軟件TPT
    北匯信息POLELINK
    發(fā)布于 :2024年03月09日 09:40:12

    TPT按照條件來篩選區(qū)間進(jìn)行Simulink模型測試評估的方法#Siumlink模型測試 #TPT

    模型TPT
    北匯信息POLELINK
    發(fā)布于 :2024年03月01日 19:10:05

    如何在DevOps環(huán)境實施測試用例管理

    由于DevOps 工作流程使用CI/CD 方法進(jìn)行軟件開發(fā),因此您的測試管理工具還應(yīng)該能夠與GitLab 和Jenkins 等CI/CD 工具集成。
    的頭像 發(fā)表于 01-29 09:30 ?1255次閱讀
    如何在DevOps環(huán)境<b class='flag-5'>中</b>實施<b class='flag-5'>測試</b>用例<b class='flag-5'>管理</b>

    IZYTRONIQ測試軟件介紹——管理測試設(shè)備數(shù)據(jù)庫

    一款完整的用于管理和記錄測試過程的數(shù)據(jù)庫軟件IZYTRONIQ
    的頭像 發(fā)表于 01-11 11:11 ?319次閱讀
    IZYTRONIQ<b class='flag-5'>測試</b><b class='flag-5'>軟件</b>介紹——<b class='flag-5'>管理</b><b class='flag-5'>測試</b>設(shè)備數(shù)據(jù)庫

    思瑞浦汽車級LIN收發(fā)器全家族產(chǎn)品TPT1021Q、TPT1022Q、TPT1024Q

    聚焦高性能模擬芯片和嵌入式處理器的半導(dǎo)體公司--思瑞浦,發(fā)布汽車級LIN收發(fā)器——TPT102xQ系列產(chǎn)品(TPT1021Q、TPT1022Q、TPT1024Q)。
    的頭像 發(fā)表于 01-03 15:04 ?601次閱讀
    思瑞浦汽車級LIN收發(fā)器全家族產(chǎn)品<b class='flag-5'>TPT</b>1021Q、<b class='flag-5'>TPT</b>1022Q、<b class='flag-5'>TPT</b>1024Q

    CANoe編寫CAPL測試腳本的幾點思考

    測試腳本的開發(fā)人員,需要考慮到測試執(zhí)行者測試不同控制器時的參數(shù)配置。比如不同的網(wǎng)絡(luò)喚醒條件、不同的網(wǎng)絡(luò)管理消息、不同的時間參數(shù)等等。
    的頭像 發(fā)表于 01-02 10:42 ?1665次閱讀
    CANoe編寫CAPL<b class='flag-5'>測試</b><b class='flag-5'>腳本</b>的幾點思考

    軟件功能測試的基本流程

    軟件功能測試根據(jù)產(chǎn)品特性、操作描述和用戶方案,測試一個產(chǎn)品的特性和可操作行為以確定它們滿足設(shè)計需求。本地化軟件的功能測試,用于驗證應(yīng)用程序或
    的頭像 發(fā)表于 12-22 11:23 ?620次閱讀

    TestStand基礎(chǔ)使用方法知識分享

    TestStand作為一款標(biāo)準(zhǔn)商用測試管理軟件,擁有基于圖形化的操作界面,具備測試管理軟件所要求的測試管理和執(zhí)行功能,也是NI在自動化測試領(lǐng)域重要的
    的頭像 發(fā)表于 12-08 13:39 ?7950次閱讀
    TestStand基礎(chǔ)使用方法知識分享

    TPT自動生成測試用例

    方法。TASMO不僅可以測量覆蓋率,還可以通過自動生成測試數(shù)據(jù)來填補(bǔ)覆蓋率的空白。在TPT 19,TASMO更進(jìn)一步,因為測試用例可以直接從形式化的需求
    的頭像 發(fā)表于 11-06 17:30 ?732次閱讀
    <b class='flag-5'>TPT</b>自動生成<b class='flag-5'>測試</b>用例

    使用TPT進(jìn)行云測試TPT與AGSOTEC合作的案例導(dǎo)讀

    汽車行業(yè)正在經(jīng)歷一場快速的變革,這是由汽車軟件的進(jìn)步所推動的。隨著汽車軟件的不斷發(fā)展,廣泛的測試對于確保車輛的安全和質(zhì)量至關(guān)重要。然而,執(zhí)行測試可能需要大量的計算且耗費(fèi)時間。為了應(yīng)對這
    的頭像 發(fā)表于 11-06 17:27 ?643次閱讀
    使用<b class='flag-5'>TPT</b>進(jìn)行云<b class='flag-5'>測試</b>:<b class='flag-5'>TPT</b>與AGSOTEC合作的案例導(dǎo)讀

    如何實施符合功能安全及ASPICE要求的模型動態(tài)測試——TPT Workshop邀請函

    2023年11月14日,我們將在北匯信息上海總部再次舉辦題為“如何實施符合功能安全及ASPICE要求的模型動態(tài)測試”的TPT Workshop活動,誠邀各位新老客戶朋友參加,前來共同交流探討!
    的頭像 發(fā)表于 11-03 14:36 ?279次閱讀
    如何實施符合功能安全及ASPICE要求的模型動態(tài)<b class='flag-5'>測試</b>——<b class='flag-5'>TPT</b> Workshop邀請函