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

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

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

如何在TPT中使用Python實(shí)現(xiàn)自定義報(bào)告

北匯信息POLELINK ? 2022-08-01 14:23 ? 次閱讀

Python是由 Guido van Rossum在八十年代末和九十年代初,在荷蘭國(guó)家數(shù)學(xué)和計(jì)算機(jī)科學(xué)研究所設(shè)計(jì)出來(lái)的,Python可以粘性整合現(xiàn)有程序,簡(jiǎn)單易學(xué),具備龐大的計(jì)算生態(tài),因此也被稱為“超級(jí)語(yǔ)言”。

TPT作為一款模型測(cè)試工具,除了可以自動(dòng)生成默認(rèn)的報(bào)告,也可以根據(jù)客戶需求進(jìn)行報(bào)告定制化,那么能夠使用Python去自定義報(bào)告嗎?

“當(dāng)然可以,而且可以自定義庫(kù)生成想要的報(bào)告”。

TPT對(duì)于Python的支持情況

在TPT中,Python需要編寫在Script評(píng)估中(通過(guò)如下方式新建)。由于TPT的高度定制化,語(yǔ)法與Python相比具有通用性和獨(dú)立性的特點(diǎn),測(cè)試人員只需具備簡(jiǎn)單的編程知識(shí)即可操作。

poYBAGLmViiAXDvSAADISw-a9PE573.png

新建Script評(píng)估

TPT script評(píng)估基于Python2.7,TPT支持Python2.7的絕大部分特性,如圖所示。

poYBAGLmWMqAMC0QAABywcoqSKE598.png

TPT支持Python情況

TPT中內(nèi)置很多自定義報(bào)告函數(shù),直接使用即可,非常方便,如下圖所示。

poYBAGLmVleAXp5GAAC6Bs6s8tA392.png

報(bào)告自定義內(nèi)置函數(shù)

TPT通過(guò)內(nèi)置函數(shù)自定義報(bào)告過(guò)程

在TPT中使用內(nèi)置函數(shù)自定義報(bào)告需要遵循一定的方法,如下所示,在TPT中的help中關(guān)于自定義報(bào)告的介紹。

poYBAGLmVr-ARniDAACdQysWWZs002.png

自定義報(bào)告方法

TPT內(nèi)置函數(shù)自定義報(bào)告支持添加“評(píng)估列表”、“信號(hào)圖像”、“自定義圖片”、“章節(jié)”、“目錄”等,接下來(lái)我們以自定義添加信號(hào)圖像為例介紹自定義報(bào)告過(guò)程。

目標(biāo):將測(cè)試用例的輸出信號(hào)添加在報(bào)告中

在TPT中編輯如下測(cè)試用例,輸出信號(hào)為“Test_Out_1”和“Test_Out_2”。

pYYBAGLmVs6ADhTNAABQ0jAWx64740.png

TPT中的測(cè)試用例

poYBAGLmVtyAdheAAACpIpEKBKk090.png

信號(hào)曲線

在TPT中添加script評(píng)估,編輯如下:

pYYBAGLmVumAQ95WAADplMMGjco342.png

自定義報(bào)告添加信號(hào)圖像

在報(bào)告中效果如下:

poYBAGLmVveAQ5V3AACj-zYbzQE453.png

TPT自動(dòng)生成的報(bào)告

如果測(cè)試用例輸出信號(hào)較多,手動(dòng)添加信號(hào)較為繁瑣,我們也可以引用Python中的列表和for循環(huán)來(lái)檢索和加載信號(hào)。

pYYBAGLmVwOARx1sAAEi6GLn-SM469.png

for循環(huán)遍歷輸出信號(hào)

TPT通過(guò)自定義庫(kù)實(shí)現(xiàn)報(bào)告定制化

假設(shè)一個(gè)測(cè)試團(tuán)隊(duì)對(duì)報(bào)告的要求是相同的,那么如果團(tuán)隊(duì)每個(gè)成員都將代碼寫一遍非常繁瑣,這時(shí)候可以自定義一個(gè)庫(kù),然后組內(nèi)同事共同加載和調(diào)用。我們還是以上面添加信號(hào)圖像為例進(jìn)行說(shuō)明,編寫如下:

poYBAGLmVxuAEUayAAFOkAq0L18677.png

自定義lib

將自定義lib保存成“.tptpy”文件,并放置在TPT的安裝目錄中(最好新建文件夾進(jìn)行保存,可能會(huì)有很多庫(kù))。

poYBAGLmVymAV6e_AABM6RsOkOo765.png

自定義的lib存放位置

當(dāng)自定義庫(kù)保存好后,我們需要在TPT中加載它。點(diǎn)擊TPT中的“Options”->“Preferences”。

首先需要在“GENERAL”->“Assessment Library”中加載自定義庫(kù)路徑。此項(xiàng)設(shè)置會(huì)應(yīng)用在所有TPT工程上。

pYYBAGLmVziAdYfVAACwWf72n8w263.png

加載自定義庫(kù)路徑

然后在當(dāng)前使用的TPT工程中的“Assessment Library”中,選擇使用哪些庫(kù)。

poYBAGLmV0OAZ3znAABNtNFd9jg624.png

選擇使用的函數(shù)

選擇好使用的庫(kù)后,在TPT中新建“Script”評(píng)估,使用快捷填充鍵選擇要使用的自定義庫(kù)。

poYBAGLmV02AARFQAABCENCPKmo432.png

選擇自定義函數(shù)

注:為避免手動(dòng)輸入信號(hào)或函數(shù)名稱導(dǎo)致的錯(cuò)誤,TPT中可以設(shè)置快捷填充鍵調(diào)用信號(hào)或函數(shù),在“Options”->“Preferences”->“General Setting”->“Workbench”->“Auto completion hot key”中進(jìn)行設(shè)置。

pYYBAGLmV1iADCidAAB_qO4EL-E967.png

快捷填充鍵設(shè)置

在自定義庫(kù)名稱后輸入 ”.”,然后再次點(diǎn)擊快捷填充鍵,選擇要使用的函數(shù)。

poYBAGLmV2aAOWgyAAA17h_7bFY952.png

選擇使用的函數(shù)

最后,輸入章節(jié)名稱,運(yùn)行即可得要想要的報(bào)告。

pYYBAGLmV3SAHCxWAAA8UwO2dpA479.png

填寫自定義章節(jié)名稱

運(yùn)行測(cè)試后,得到如下報(bào)告:

pYYBAGLmV3-AWXB4AACMWSmiqmY184.png

自定義報(bào)告

總結(jié)

本文只是介紹了將測(cè)試用例輸出信號(hào)加載到報(bào)告中,我們當(dāng)然也可以通過(guò)腳本自定義Table、Image、Requirements、Table等,也可以通過(guò)不同的組合得到想要的報(bào)告。

通過(guò)在自定義報(bào)告中使用Python,可以提高我們的測(cè)試效率,并且提高代碼的復(fù)用性。當(dāng)然,Python不止可以應(yīng)用在自定義報(bào)告上,我們也可以使用在評(píng)估、TPT配置中,甚至將TPT工程保存為“.tptprj”文件格式后,可以對(duì)工程本身進(jìn)行修改。

關(guān)于Python在TPT中的使用,更多精彩內(nèi)容請(qǐng)查看:

TPT中腳本評(píng)估的使用(上):強(qiáng)大的內(nèi)置函數(shù)庫(kù)

TPT中腳本評(píng)估的使用(下):測(cè)試管理與軟件交互

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

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

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(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)投訴
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4797

    瀏覽量

    84690
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    TPS659xx應(yīng)用程序自定義工具

    電子發(fā)燒友網(wǎng)站提供《TPS659xx應(yīng)用程序自定義工具.pdf》資料免費(fèi)下載
    發(fā)表于 11-06 10:02 ?0次下載
    TPS659xx應(yīng)用程序<b class='flag-5'>自定義</b>工具

    創(chuàng)建自定義的基于閃存的引導(dǎo)加載程序(BSL)

    電子發(fā)燒友網(wǎng)站提供《創(chuàng)建自定義的基于閃存的引導(dǎo)加載程序(BSL).pdf》資料免費(fèi)下載
    發(fā)表于 09-19 10:50 ?0次下載
    創(chuàng)建<b class='flag-5'>自定義</b>的基于閃存的引導(dǎo)加載程序(BSL)

    如何創(chuàng)建TestStand自定義步驟

    在之前的課程中簡(jiǎn)單地介紹過(guò)TestStand自帶的一些步驟類型,如測(cè)試、消息彈窗、賦值、標(biāo)簽等等,這些簡(jiǎn)單的步驟從TestStand的插入選版中就可以添加到序列中。那么在使用中如果碰到需要實(shí)現(xiàn)更加靈活、復(fù)雜的功能,使用自帶的一些步驟類型可能難以滿足,這時(shí)就需要使用到自定義
    的頭像 發(fā)表于 09-11 14:46 ?1105次閱讀
    如何創(chuàng)建TestStand<b class='flag-5'>自定義</b>步驟

    EtherCAT運(yùn)動(dòng)控制器PT/PVT實(shí)現(xiàn)用戶自定義軌跡規(guī)劃

    EtherCAT運(yùn)動(dòng)控制器PT/PVT實(shí)現(xiàn)用戶自定義軌跡規(guī)劃。
    的頭像 發(fā)表于 08-15 11:49 ?637次閱讀
    EtherCAT運(yùn)動(dòng)控制器PT/PVT<b class='flag-5'>實(shí)現(xiàn)</b>用戶<b class='flag-5'>自定義</b>軌跡規(guī)劃

    NVIDIA NeMo加速并簡(jiǎn)化自定義模型開發(fā)

    如果企業(yè)希望充分發(fā)揮出 AI 的力量,就需要根據(jù)其行業(yè)需求量身定制的自定義模型。
    的頭像 發(fā)表于 07-26 11:17 ?755次閱讀
    NVIDIA NeMo加速并簡(jiǎn)化<b class='flag-5'>自定義</b>模型開發(fā)

    何在IDF框架中使自定義的靜態(tài)庫(kù)和動(dòng)態(tài)庫(kù)?

    基于商業(yè)需要,我們需要在 ESP-IDF v4.0-rc 這個(gè)版本的IDF中開發(fā)與使用自定義庫(kù),有如下問(wèn)題請(qǐng)協(xié)助: 1如何利用IDF框架編寫自定義靜態(tài)庫(kù)和動(dòng)態(tài)庫(kù)? 2如何在IDF框架中使
    發(fā)表于 06-25 07:57

    ESP32下如何加自定義Python庫(kù)?

    我看官方有提供Micropython的bin文件,但我想根據(jù)自己外設(shè)擴(kuò)充一下Python庫(kù),這個(gè)應(yīng)該從哪里入手? 之前做過(guò)RTT系統(tǒng)的python庫(kù)擴(kuò)充,RTT有提供Micropython的源代碼,直接在里面加自己的庫(kù)就行 ESP32下如何加
    發(fā)表于 06-18 06:27

    HarmonyOS開發(fā)案例:【 自定義彈窗】

    基于ArkTS的聲明式開發(fā)范式實(shí)現(xiàn)了三種不同的彈窗,第一種直接使用公共組件,后兩種使用CustomDialogController實(shí)現(xiàn)自定義彈窗
    的頭像 發(fā)表于 05-16 18:18 ?1372次閱讀
    HarmonyOS開發(fā)案例:【 <b class='flag-5'>自定義</b>彈窗】

    AWTK 開源串口屏開發(fā)(18) - 用 C 語(yǔ)言自定義命令

    編寫代碼即可實(shí)現(xiàn)常見的應(yīng)用。但是,有時(shí)候我們需要自定義一些命令,以實(shí)現(xiàn)一些特殊的功能。本文檔介紹如何使用C語(yǔ)言自定義命令。1.實(shí)現(xiàn)hmi_m
    的頭像 發(fā)表于 05-11 08:24 ?442次閱讀
    AWTK 開源串口屏開發(fā)(18) - 用 C 語(yǔ)言<b class='flag-5'>自定義</b>命令

    TSMaster 自定義 LIN 調(diào)度表編程指導(dǎo)

    LIN(LocalInterconnectNetwork)協(xié)議調(diào)度表是用于LIN總線通信中的消息調(diào)度的一種機(jī)制,我們收到越來(lái)越多來(lái)自不同用戶希望能夠通過(guò)接口實(shí)現(xiàn)自定義LIN調(diào)度表的需求。所以在
    的頭像 發(fā)表于 05-11 08:21 ?677次閱讀
    TSMaster <b class='flag-5'>自定義</b> LIN 調(diào)度表編程指導(dǎo)

    HarmonyOS開發(fā)案例:【UIAbility和自定義組件生命周期】

    本文檔主要描述了應(yīng)用運(yùn)行過(guò)程中UIAbility和自定義組件的生命周期。對(duì)于UIAbility,描述了Create、Foreground、Background、Destroy四種生命周期。對(duì)于頁(yè)面
    的頭像 發(fā)表于 05-10 15:31 ?1250次閱讀
    HarmonyOS開發(fā)案例:【UIAbility和<b class='flag-5'>自定義</b>組件生命周期】

    HarmonyOS實(shí)戰(zhàn)開發(fā)-深度探索與打造個(gè)性化自定義組件

    ,容器組件,媒體組件,繪制組件,畫布組件組件等,如Button、Text 是基礎(chǔ)組件。 由開發(fā)者在基礎(chǔ)組件基礎(chǔ)上 添加一些封裝和修飾 定義的組件稱為自定義組件。自定義組件的實(shí)現(xiàn)大大提高
    發(fā)表于 05-08 16:30

    HarmonyOS開發(fā)實(shí)例:【自定義Emitter】

    使用[Emitter]實(shí)現(xiàn)事件的訂閱和發(fā)布,使用[自定義彈窗]設(shè)置廣告信息。
    的頭像 發(fā)表于 04-14 11:37 ?1003次閱讀
    HarmonyOS開發(fā)實(shí)例:【<b class='flag-5'>自定義</b>Emitter】

    鴻蒙ArkUI實(shí)例:【自定義組件】

    組件是 OpenHarmony 頁(yè)面最小顯示單元,一個(gè)頁(yè)面可由多個(gè)組件組合而成,也可只由一個(gè)組件組合而成,這些組件可以是ArkUI開發(fā)框架自帶系統(tǒng)組件,比如?`Text`?、?`Button`?等,也可以是自定義組件,本節(jié)筆者簡(jiǎn)單介紹一下自定義組件的語(yǔ)法規(guī)范。
    的頭像 發(fā)表于 04-08 10:17 ?643次閱讀

    RK3568驅(qū)動(dòng)指南|驅(qū)動(dòng)基礎(chǔ)進(jìn)階篇-進(jìn)階5 自定義實(shí)現(xiàn)insmod命令實(shí)驗(yàn)

    RK3568驅(qū)動(dòng)指南|驅(qū)動(dòng)基礎(chǔ)進(jìn)階篇-進(jìn)階5 自定義實(shí)現(xiàn)insmod命令實(shí)驗(yàn)
    的頭像 發(fā)表于 02-20 14:10 ?708次閱讀
    RK3568驅(qū)動(dòng)指南|驅(qū)動(dòng)基礎(chǔ)進(jìn)階篇-進(jìn)階5 <b class='flag-5'>自定義</b><b class='flag-5'>實(shí)現(xiàn)</b>insmod命令實(shí)驗(yàn)