通過XML調用CAPL腳本進行測試(新手向)

目錄

0 引言

1 XML簡介

2 通過XML調用CAPL腳本


0 引言

? ? ? ? 紀念一下今天這個特殊日子,四年出現一次的29號。

? ? ? ? 在CANoe中做自動化測試常用的編程方法有CAPL和XML兩種,二者各有各的特色,對于CAPL來說新手肯定是更熟悉一些,因為說到在CANoe Test Module中寫腳本那基本80%用的都是CAPL,但它的缺點也很明顯就是不靈活,測試case的控制總體是通過MainTest()來實現的,當工程運行起來后沒有辦法自由轉換測試用例。

void MainTest()
{tWakeUp_200 = 5;tSleep = 6000;testWaitForTimeout(2000);//等待系統變量的響應;testModuleTitle(" NM Automation Test");testGroupBegin("NM Test","");BSM_To_RMS(); //測試用例1RMS_To_RSS(); //測試用例2testGroupEnd();
}

所有的測試用例都被集成在了CAPL測試文件中不能自由選擇:

而使用XML的方法就很好的克服這些缺點,每個case都是獨立的個體,可以自由的去選擇想要測試的測試用例,這與在VT中生成的case相類似。但XML對新手基本來說是一種陌生的語法,專門使用XML去編寫case也會占用不少的時間成本去學習。因此本文重在講解一種融合了XML的靈活性和CAPL的易上手性相結合的方法來幫助新手提升測試效率,并且了解兩種語言的魅力。

1 XML簡介

幫助文檔中對XML的介紹如下,感興趣的朋友可以自行閱讀:

????????當要從現有數據生成大量測試用例時,在XML中使用文本模塊是特別方便的。由于XML文件基本上包含測試參數,因此生成器必須簡單地將現有數據轉換為所需的XML形式。

????????一個XML測試模塊由:任意數量的測試用例組成,這些測試用例可以分組在測試組中。測試用例按照在XML文件中定義的順序進行處理。單個測試用例可以從執行對話框的執行中排除。每個測試用例通常由單獨的測試和控制功能組成。一旦測試/控制功能失敗或違反約束/條件,被執行的測試用例就會終止,并在測試報告中被標記為失敗。測試模塊本身不會中止;測試只是繼續進行下一個測試用例。

2 通過XML調用CAPL腳本

使用XML和CAPL相結合的方法進行測試:

1.創建XML節點得到XML文件:

2.在XML文件中輸入如下代碼:

<?xml version="1.0" encoding="utf-8" standalone="yes" ?><testmodule title="123" version="V1.0"><!--variants  > <variant  name="All" >         </variant> 		<variant  name="Auto" >        </variant><variant  name="SemiAuto" >    </variant><variant  name="NA">          </variant></variants--><testgroup title="123"> 	<capltestcase  name="MotorMovePoweroff"     //name 雙引號里的內容要與testcase的名字相一致                                title="MotorMovePoweroff"> </capltestcase><capltestcase  name="PowerSlowUpDown"                                     title="PowerSlowUpDown"> </capltestcase><capltestcase  name="PowerandSleepMode"                                     title="PowerandSleepMode"> </capltestcase><capltestcase  name="PowerSlowUpDown"                                     title="PowerSlowUpDown"> </capltestcase><capltestcase  name="EcuStandby"                                     title="EcuStandby"> </capltestcase><capltestcase  name="PowerSlowUpDown"                                     title="PowerSlowUpDown"> </capltestcase><capltestcase  name="PowerSlowUpDown"                                     title="PowerSlowUpDown"> </capltestcase><capltestcase  name="StressTest_EOLselflearning"                                     title="StressTest_EOLselflearning"> </capltestcase>	<capltestcase  name="HighVoltageMotorMove"                                     title="HighVoltageMotorMove11"> </capltestcase><capltestcase  name="LowVoltageMotorMove"                                     title="LowVoltageMotorMove"> </capltestcase>	 <capltestcase  name="ZeroGravityToDefaultPositionAndRetract"           title="ZeroGravityToDefaultPositionAndRetract"> </capltestcase><capltestcase  name="ZeroGravityToDefaultPositionBeinterruptedAndRetract"           title="ZeroGravityToDefaultPositionBeinterruptedAndRetract"> </capltestcase>		 <capltestcase  name="ZeroGravityToSEMI_DefaultPositionAndRetract"           title="ZeroGravityToSEMI_DefaultPositionAndRetract"> </capltestcase>	<capltestcase  name="ZeroGravityUnfoldMemory"           title="ZeroGravityUnfoldMemory"> </capltestcase>	</testgroup></testmodule>

?3 在XML節點中導入我們所需的CAPL文件:

4.完成如下圖所示:

?

TIPs:

a. 需要注意的時導入XML中的CAPL腳本內不能含有?MainTest()

b.在XML文件中capltestcase ?name=“A”,A必須和CAPL腳本中的測試用例的名稱相一致

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/716790.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/716790.shtml
英文地址,請注明出處:http://en.pswp.cn/news/716790.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

使用Go Validator在Go應用中有效驗證數據

作為一名開發者&#xff0c;確保Go應用中處理的數據是有效和準確的非常重要。Go Validator是一個開源的數據驗證庫&#xff0c;為Go結構體提供強大且易于使用的數據驗證功能。本篇文章將介紹Go Validator庫的主要特點以及如何在Go應用中使用它來有效驗證數據。 什么是Go Valid…

Vue開發實例(五)修改項目入口頁面布局

修改項目入口 一、創建新入口二、分析代碼&#xff0c;修改入口三、搭建項目主頁面布局1、Container 布局容器介紹2、創建布局3、布局器鋪滿屏幕4、創建Header頁面5、加入Aside、Main和Footer模塊 一、創建新入口 創建新的入口&#xff0c;取消原來的HelloWorld入口 參考代碼…

劍指offer刷題記錄Day2 07.數組中重復的數字 ---> 11.旋轉數組的最小數字

名人說&#xff1a;莫道桑榆晚&#xff0c;為霞尚滿天。——劉禹錫&#xff08;劉夢得&#xff0c;詩豪&#xff09; 創作者&#xff1a;Code_流蘇(CSDN)&#xff08;一個喜歡古詩詞和編程的Coder&#x1f60a;&#xff09; 目錄 1、重建二叉樹①代碼實現&#xff08;帶注釋&am…

【重溫設計模式】職責鏈模式及其Java示例

職責鏈模式的介紹 在開發過程中&#xff0c;我們經常會遇到這樣的問題&#xff1a;一個請求需要經過多個對象的處理&#xff0c;但是我們并不知道具體由哪個對象來處理&#xff0c;或者說&#xff0c;我們希望由接收到請求的對象自己去決定如何處理或者是將請求傳遞給下一個對…

CSS 選擇器的常見用法

這里CSS選擇器主要分為以下這幾種&#xff1a;1. 標簽選擇器 2. class選擇器 3. id選擇器 4. 復合選擇器 5. 通配符選擇器 CSS 選擇器的主要功能就是選中??指定的標簽元素. 選中了元素, 才可以設置元素的屬性. 1.標簽選擇器 <style>p{color: red;} </style> &…

表單控件上的事件

<!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>光標聚焦和失焦事件</title><style type"text/css">.text{color: red;font-size: 12px;}</style> </head> <bod…

【深度學習筆記】計算機視覺——錨框

錨框 目標檢測算法通常會在輸入圖像中采樣大量的區域&#xff0c;然后判斷這些區域中是否包含我們感興趣的目標&#xff0c;并調整區域邊界從而更準確地預測目標的真實邊界框&#xff08;ground-truth bounding box&#xff09;。 不同的模型使用的區域采樣方法可能不同。 這里…

吳恩達deeplearning.ai:正則化對于偏方差的影響制定用于性能評估的基準

以下內容有任何不理解可以翻看我之前的博客哦&#xff1a;吳恩達deeplearning.ai專欄 這節我們看看正則化系數 文章目錄 以線性回歸為例交叉驗證誤差對于確定 λ \lambda λ的作用 指定用于性能評估的基準語音識別的例子 以線性回歸為例 讓我們舉一個例子&#xff1a; 模型&am…

Outlook郵箱IMAP密碼怎么填寫?賬戶設置?

Outlook郵箱IMAP密碼是什么&#xff1f;Outlook如何設置IMAP&#xff1f; 許多用戶會選擇通過IMAP協議將郵箱與各種郵件客戶端進行連接。而在設置過程中&#xff0c;填寫IMAP密碼是必不可少的一步。那么&#xff0c;Outlook郵箱的IMAP密碼應該如何填寫呢&#xff1f;接下來&am…

【Linux】深入理解ls命令

&#x1f34e;個人博客&#xff1a;個人主頁 &#x1f3c6;個人專欄&#xff1a;Linux ?? 功不唐捐&#xff0c;玉汝于成 目錄 前言 正文 基本用法 常用選項 示例 高級用法 結語 我的其他博客 前言 在 Linux 系統中&#xff0c;ls 命令是一個強大而又基礎的工具&am…

高刷顯示器 - HKC VG253KM

&#x1f525;&#x1f525; 今天來給大家揭秘一款電競神器 - HKC VG253KM 高刷電競顯示器&#xff01;這款顯示器可是有著雄鷹展翅般的設計靈感&#xff0c;背后的大鵬展翅鷹翼圖騰讓人過目難忘。那么&#xff0c;這款顯示器到底有哪些過人之處呢&#xff1f;一起來看看吧&…

【MySQL】基于Docker搭建MySQL一主二從集群

本文記錄了搭建mysql一主二從集群&#xff0c;這樣的一個集群master為可讀寫&#xff0c;slave為只讀。過程中使用了docker&#xff0c;便于快速搭建單體mysql。 1&#xff0c;準備docker docker的安裝可以參考之前基于yum安裝docker的文章[1]。 容器相關命令[2]。 查看正在…

如何系統的學習Python——Python的基本語法

學習Python的基本語法是入門的第一步&#xff0c;以下是一些常見的基本語法概念&#xff1a; 注釋&#xff1a; 用#符號來添加單行注釋&#xff0c;或使用三引號(或""")來添加多行注釋。 # 這是一個單行注釋 這是 多行 注釋 變量和數據類型&#xff1a; 變量用…

Pod和容器設計模式

為什么需要 Pod&#xff1b; Pod 的實現機制&#xff1b; 詳解容器設計模式。 一、為什么需要 Pod 容器的基本概念 現在來看第一個問題&#xff1a;為什么需要 Pod&#xff1f;我們知道 Pod 是 Kubernetes 項目里面一個非常重要的概念&#xff0c;也是非常重要的一個原子調…

144. 二叉樹的前序遍歷

給你二叉樹的根節點 root &#xff0c;返回它節點值的 前序 遍歷。 示例 1&#xff1a; 輸入&#xff1a;root [1,null,2,3] 輸出&#xff1a;[1,2,3]示例 2&#xff1a; 輸入&#xff1a;root [] 輸出&#xff1a;[]示例 3&#xff1a; 輸入&#xff1a;root [1] 輸出&am…

java方法

目錄 方法的定義 方法的命名規則 方法的調用與重載 方法調用實例 方法的重載 變量的作用域 算法中常見的方法 1&#xff1a;gcd&#xff08;求兩個整數中的最大公約數&#xff09; 2&#xff1a;lcm&#xff08;求兩個整數的最小公倍數&#xff09; 3:判斷一個整數是否…

SpringCloud(18)之Sleuth +Zipkin鏈路追蹤

一、Zipkin介紹 Zipkin是一個開放源代碼分布式的跟蹤系統&#xff0c;它可以幫助收集服務的時間數據&#xff0c;以解決微服務架構中的延遲問 題&#xff0c;包括數據的收集、存儲、查找和展現。每個服務向zipkin報告計時數據&#xff0c;zipkin會根據調用關系通 過Zipkin UI…

LeetCode: 數組中的第K個最大元素

問題描述 在未排序的數組中找到第k個最大的元素。請注意&#xff0c;你需要找的是數組排序后的第k個最大的元素&#xff0c;而不是第k個不同的元素。 解題思路 解決這個問題有多種方法&#xff0c;下面是幾種常見的解題策略&#xff1a; 排序后選擇: 將數組排序&#xff0c…

ProChat 如何接入 WebSocket

WebSocket是一種在單個TCP連接上進行全雙工通信的協議&#xff0c;允許客戶端和服務器之間進行雙向實時通信。與Server-Sent Events (SSE)類似&#xff0c;WebSocket也能實現實時數據推送&#xff0c;但其功能更為強大且靈活。 全雙工通信&#xff1a;WebSocket不僅允許服務器向…

【TestNG】(4) 重試機制與監聽器的使用

在UI自動化測試用例執行過程中&#xff0c;經常會有很多不確定的因素導致用例執行失敗&#xff0c;比如網絡原因、環境問題等&#xff0c;所以我們有必要引入重試機制&#xff08;失敗重跑&#xff09;&#xff0c;來提高測試用例成功率。 在不寫代碼的情況沒有提供可配置方式…