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

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

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

DDS測(cè)試策略探討與協(xié)議測(cè)試工具介紹

汽車ECU開發(fā) ? 來源:汽車ECU開發(fā) ? 2023-01-04 15:00 ? 次閱讀

01

軟件定義汽車對(duì)測(cè)試的影響

OEM和供應(yīng)商之間傳統(tǒng)的合作模式是由OEM釋放技術(shù)需求,供應(yīng)商按照需求進(jìn)行軟件和硬件實(shí)現(xiàn),最終交付的是完整的軟硬件系統(tǒng)。隨著集中式架構(gòu)的逐步演進(jìn),這種合作模式正在被打破——標(biāo)準(zhǔn)化的高性能硬件平臺(tái)、高級(jí)操作系統(tǒng)、中間件以及虛擬化技術(shù)得以應(yīng)用,使硬件越來越抽象化,可以使應(yīng)用程序脫離硬件,相對(duì)獨(dú)立的進(jìn)行開發(fā)和測(cè)試。這就允許ECU的開發(fā)可以進(jìn)行更細(xì)致的分工,比如硬件由供應(yīng)商A提供,操作系統(tǒng)和基礎(chǔ)軟件由供應(yīng)商B進(jìn)行開發(fā)或集成,應(yīng)用軟件由供應(yīng)商C開發(fā)等等。可以說OEM和供應(yīng)商的合作模式更靈活了。

OEM作為集成方,需要對(duì)來自不同供應(yīng)商的模塊進(jìn)行“驗(yàn)收測(cè)試”,其目的是確認(rèn)該模塊是否按照需求進(jìn)行實(shí)現(xiàn)。根據(jù)需求類型可以將驗(yàn)收測(cè)試劃分為三個(gè)部分:針對(duì)行業(yè)標(biāo)準(zhǔn)的驗(yàn)收測(cè)試,針對(duì)OEM企業(yè)標(biāo)準(zhǔn)的驗(yàn)收測(cè)試,以及針對(duì)車型項(xiàng)目需求的驗(yàn)收測(cè)試。其中每個(gè)部分又根據(jù)測(cè)試方法的不同而分成兩種類型,分別是靜態(tài)審查和動(dòng)態(tài)測(cè)試。

OEM和供應(yīng)商的合作模式的改變對(duì)其中動(dòng)態(tài)測(cè)試的部分的影響很大。進(jìn)行動(dòng)態(tài)測(cè)試時(shí),測(cè)試環(huán)境需要為被測(cè)對(duì)象提供運(yùn)行環(huán)境,并且能夠仿真系統(tǒng)中的其他部分(或稱殘余系統(tǒng))與被測(cè)對(duì)象的交互。在傳統(tǒng)的OEM和供應(yīng)商的合作模式下,供應(yīng)商交付的是ECU實(shí)體,是包含軟件和硬件的一整套系統(tǒng),所以這時(shí)候所謂的動(dòng)態(tài)測(cè)試指的就是ECU的HiL測(cè)試。

這種情況下ECU和殘余系統(tǒng)的交互實(shí)現(xiàn)方案相對(duì)來說是標(biāo)準(zhǔn)化的,如CAN/LIN等總線信號(hào)以及I/O信號(hào),目前有非常成熟的解決方案。而當(dāng)OEM和供應(yīng)商的合作模式改變之后,供應(yīng)商交付物的形態(tài)更加多樣,它可能是一個(gè)完整的ECU,或者一個(gè)操作系統(tǒng),或者一個(gè)中間件,或者一個(gè)應(yīng)用軟件。這種多樣性對(duì)動(dòng)態(tài)測(cè)試環(huán)境的搭建帶來了挑戰(zhàn),比如把應(yīng)用程序作為被測(cè)對(duì)象,我們需要模擬被測(cè)對(duì)象依賴的全部環(huán)境,包括操作系統(tǒng)、依賴庫和硬件等,十分困難。因?yàn)闇y(cè)試方案不像原來一樣標(biāo)準(zhǔn)化了,測(cè)試系統(tǒng)很難像流水線一樣生產(chǎn)出來。新的模式下,我們需要和每一個(gè)客戶深入溝通,明確測(cè)試對(duì)象是什么,邊界在哪里,需求是什么,然后才能進(jìn)一步評(píng)估,制定合適的測(cè)試方案。

02

DDS中間件的測(cè)試策略

DDS中間件即是上述新模式下的一個(gè)典型例子,那么如何對(duì)這種產(chǎn)品進(jìn)行測(cè)試呢?

對(duì)于成熟的標(biāo)準(zhǔn)的軟件產(chǎn)品,比如Linux,QNX等,我們其實(shí)并不需要對(duì)其核心功能進(jìn)行太多測(cè)試,因?yàn)檐浖?a target="_blank">廠商開發(fā)者會(huì)在產(chǎn)品開發(fā)過程中進(jìn)行大量測(cè)試,市場(chǎng)和時(shí)間也能充分證明其質(zhì)量的可靠性,這也是我們選擇成熟軟件模塊的意義所在。然而,當(dāng)我們把來自不同供應(yīng)商的標(biāo)準(zhǔn)產(chǎn)品放到同一個(gè)系統(tǒng)或網(wǎng)絡(luò)中協(xié)同工作時(shí),必須考慮到它們之間是否兼容,也就是互操作問題。

那么對(duì)DDS來說,會(huì)出現(xiàn)互操作問題嗎?這需要分情況討論。

如果參與DDS通信的節(jié)點(diǎn)均是基于高性能SoC實(shí)現(xiàn),并且運(yùn)行標(biāo)準(zhǔn)操作系統(tǒng)(如Linux,QNX等),得益于DDS良好的可移植性和OS無關(guān)的特性,OEM可以采用成熟的商業(yè)產(chǎn)品或開源產(chǎn)品,然后部署在每個(gè)節(jié)點(diǎn)中。此時(shí),若所有節(jié)點(diǎn)運(yùn)行著相同的來源和版本的DDS中間件,顯然這種模式下我們可以忽略互操作的問題。

然而,目前也有不少廠商正在嘗試或已經(jīng)實(shí)現(xiàn)向MCU中集成DDS中間件。受限于MCU性能和資源,DDS軟件必須經(jīng)過適當(dāng)裁剪和優(yōu)化才能在MCU的環(huán)境下運(yùn)行。同時(shí),MCU軟硬件高度耦合,軟件移植、復(fù)用和維護(hù)并不容易,這種情況下我們可能不能再將其視為成熟的軟件模塊,廠商因此需要對(duì)DDS軟件進(jìn)行大量的測(cè)試來保證DDS系統(tǒng)的質(zhì)量。這種情況下,為了避免與其他DDS軟件互通時(shí)產(chǎn)生交互問題,互操作測(cè)試是必不可少的。除了上述情況,如果DDS中間件來源或版本存在差別,互操作性測(cè)試也將是十分必要的。

除了互操作測(cè)試,另一個(gè)更重要的關(guān)注點(diǎn)是系統(tǒng)測(cè)試,具體來說是DDS中間件集成至目標(biāo)平臺(tái)后,會(huì)不會(huì)出現(xiàn)系統(tǒng)性問題。因?yàn)檐囕d電子電器系統(tǒng)的計(jì)算平臺(tái)五花八門,不同車型平臺(tái),不同項(xiàng)目,其搭載的系統(tǒng)平臺(tái)(包括芯片架構(gòu),操作系統(tǒng)等)可能都有不同,甚至還有像基于MCU的DDS這種嵌入式軟件,這些不同的平臺(tái)相互的組合情況,DDS QoS配置組合情況,以及復(fù)雜的網(wǎng)絡(luò)配置情況(如DDS-TSN),更難以計(jì)數(shù)。盡管DDS協(xié)議棧廠商可能會(huì)驗(yàn)證DDS產(chǎn)品與常見平臺(tái)的兼容性,但是這很難覆蓋所有可能的系統(tǒng)配置。所以我們認(rèn)為在上述情況下對(duì)DDS中間件進(jìn)行功能和性能測(cè)試是有必要的。

03

DDS協(xié)議測(cè)試工具介紹

基于上文對(duì)測(cè)試策略的討論和實(shí)踐總結(jié),北匯信息與南京臻融軟件科技合作開發(fā)了DDS協(xié)議測(cè)試套件,該產(chǎn)品能夠在特定系統(tǒng)環(huán)境下驗(yàn)證DDS中間件的功能和性能,以及不同的DDS產(chǎn)品之間的互操作性。

南京臻融軟件科技有限公司多年來專注于DDS產(chǎn)品與相關(guān)工具鏈的自主研發(fā)。其產(chǎn)品ZRDDS是我國首個(gè)100%自主研制并被OMG組織官方認(rèn)證的DDS產(chǎn)品。

72849898-8bf3-11ed-bfe3-dac502259ad0.png

圖1:DDS協(xié)議測(cè)試的測(cè)試框架示意

圖1顯示了DDS協(xié)議測(cè)試的測(cè)試框架示意。上位機(jī)中運(yùn)行的DDS Test Frame軟件能夠提供圖形化的用戶界面,具備測(cè)試用例管理,測(cè)試用例執(zhí)行監(jiān)控,測(cè)試報(bào)告生成,測(cè)試系統(tǒng)配置等功能。DDS Tester是專門為測(cè)試而開發(fā)的應(yīng)用程序,在開始測(cè)試之前需要將此應(yīng)用植入被測(cè)系統(tǒng)的每個(gè)節(jié)點(diǎn)內(nèi)部。測(cè)試執(zhí)行過程中,上位機(jī)將指令下發(fā)至DDS Tester,DDS Tester按照指令內(nèi)容執(zhí)行操作,比如調(diào)用某個(gè)應(yīng)用程序接口,并將結(jié)果返回至上位機(jī)。其角色類似于TC8 TCP/IP測(cè)試中的Upper Tester。得益于DDS標(biāo)準(zhǔn)化的應(yīng)用程序接口,理論上DDS Tester可在不同供應(yīng)商的DDS產(chǎn)品之間輕松移植。

當(dāng)然,DDS節(jié)點(diǎn)并不一定只通過以太網(wǎng)進(jìn)行通信,其它還包括板載交換機(jī)的介質(zhì)無關(guān)接口,共享內(nèi)存,或者本地環(huán)回網(wǎng)絡(luò)等等,測(cè)試環(huán)境可以根據(jù)系統(tǒng)的實(shí)際情況進(jìn)行搭建。

DDS協(xié)議測(cè)試規(guī)范/用例完全自主設(shè)計(jì)開發(fā),并且在多年的項(xiàng)目實(shí)踐中不斷進(jìn)行迭代和優(yōu)化,目前可以覆蓋OMG DDS 1.4所定義的DCPS的核心功能,包括DDS應(yīng)用程序接口的行為,QoS行為,以及性能測(cè)試,共計(jì)400余條測(cè)試用例,通過所開發(fā)的測(cè)試腳本套件,全部可實(shí)現(xiàn)自動(dòng)化執(zhí)行。

04

DDS協(xié)議測(cè)試實(shí)踐

如下示例展示了DDS測(cè)試的執(zhí)行過程。

72a663d8-8bf3-11ed-bfe3-dac502259ad0.png

圖2:測(cè)試環(huán)境

72aed5ea-8bf3-11ed-bfe3-dac502259ad0.png

圖3:DDS Tester 運(yùn)行界面

測(cè)試環(huán)境如圖2所示,為便于展示,被測(cè)系統(tǒng)為Windows主機(jī)中運(yùn)行的兩臺(tái)Ubuntu虛擬機(jī),兩臺(tái)虛擬機(jī)中均運(yùn)行DDS Tester。被測(cè)DDS為某DDS中間件產(chǎn)品,目前在汽車行業(yè)內(nèi)已經(jīng)得到較廣應(yīng)用。

在上位機(jī)軟件DDS Test Frame中選擇并執(zhí)行測(cè)試用例,如圖4所示。

72bb29da-8bf3-11ed-bfe3-dac502259ad0.png

圖4:在DDS Test Frame中執(zhí)行測(cè)試用例

我們以DisposeWTimeStamp_WrongHandle這條失敗的測(cè)試用例來說明一下測(cè)試問題的分析步驟。測(cè)試步驟如下表所示。

72cb2a4c-8bf3-11ed-bfe3-dac502259ad0.png

在這條測(cè)試用例中,DDS Test Frame發(fā)送指令,使DDS Tester創(chuàng)建同一個(gè)Topic的兩個(gè)數(shù)據(jù),分別為Data1和Data2,Topic中指定“key”為鍵,不同鍵值的兩個(gè)數(shù)據(jù)應(yīng)視為同一個(gè)Topic的兩個(gè)不同的實(shí)例。之后創(chuàng)建對(duì)應(yīng)的DDS實(shí)體,包括DomainParticipant,Topic,Publisher,以及DataWriter,并使用Data1和Data2分別在DataWriter中進(jìn)行注冊(cè),獲得兩個(gè)句柄Handle1和Handle2,分別指向key為1和2的兩個(gè)Topic實(shí)例,Data1和Data2。當(dāng)取消注冊(cè)時(shí),DDS Tester使用了錯(cuò)誤的句柄,即使用Data1和Handle2來取消注冊(cè),按照OMG DDS標(biāo)準(zhǔn)的描述,這時(shí)DDS應(yīng)向應(yīng)用程序返回“PRECONDITION_NOT_MET”,但實(shí)際返回為“OK”。

通過以上示例我們可以看到,被測(cè)DDS并沒有完全按照OMG DDS標(biāo)準(zhǔn)進(jìn)行實(shí)現(xiàn)。在實(shí)際項(xiàng)目中,這樣的偏離可能導(dǎo)致系統(tǒng)不能達(dá)到設(shè)計(jì)預(yù)期的功能或者性能。DDS作為支撐起整車分布式系統(tǒng)的重要的框架性軟件,我們需要謹(jǐn)慎的評(píng)估每一個(gè)對(duì)需求的實(shí)現(xiàn)偏離,因?yàn)槠溆绊懙姆秶赡懿⒉痪窒抻谀硞€(gè)應(yīng)用程序或某個(gè)應(yīng)用場(chǎng)景,它可能影響的是整個(gè)分布式系統(tǒng)。

DDS協(xié)議測(cè)試套件中的測(cè)試用例能夠在實(shí)際系統(tǒng)環(huán)境下遍歷幾乎所有應(yīng)用程序接口,以及所有可能出現(xiàn)的調(diào)用接口的參數(shù)組合情況,并且能夠評(píng)估整個(gè)系統(tǒng)在不同場(chǎng)景下的性能表現(xiàn),實(shí)現(xiàn)了對(duì)DDS中間件的全面和深入的測(cè)試和評(píng)估。

05

總結(jié)

本篇文章探討了DDS中間件的測(cè)試策略,并介紹了北匯信息與臻融軟件科技推出的測(cè)試套件,然后通過一個(gè)示例展示了測(cè)試執(zhí)行和分析問題的過程。如果想了解更多關(guān)于DDS協(xié)議測(cè)試套件的信息,歡迎聯(lián)系我們。

在過去的一年,除本文所介紹DDS協(xié)議測(cè)試,北匯落地實(shí)踐了若干DDS相關(guān)的測(cè)試開發(fā)項(xiàng)目,包括基于OEM定制需求的DDS通信測(cè)試、S2S測(cè)試、DDS應(yīng)用類測(cè)試,后續(xù)會(huì)有相關(guān)的文章持續(xù)與大家分享,敬請(qǐng)關(guān)注。

審核編輯 :李倩

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

    關(guān)注

    37

    文章

    6892

    瀏覽量

    123742
  • DDS
    DDS
    +關(guān)注

    關(guān)注

    21

    文章

    636

    瀏覽量

    152936
  • ecu
    ecu
    +關(guān)注

    關(guān)注

    14

    文章

    892

    瀏覽量

    54745

原文標(biāo)題:DDS測(cè)試策略探討與協(xié)議測(cè)試工具介紹

文章出處:【微信號(hào):eng2mot,微信公眾號(hào):汽車ECU開發(fā)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    芯科科技Z-Wave設(shè)備測(cè)試工具介紹

    本篇技術(shù)博文將介紹SiliconLabs(芯科科技)提供的Z-Wave設(shè)備測(cè)試工具,通過使用一個(gè)舊的Z-Wave DUT項(xiàng)目來測(cè)試Z-Wave設(shè)備,以確保設(shè)備可以正常工作。
    的頭像 發(fā)表于 01-17 09:39 ?115次閱讀
    芯科科技Z-Wave設(shè)備<b class='flag-5'>測(cè)試工具</b><b class='flag-5'>介紹</b>

    Web端TCP/UDP測(cè)試工具!小白必學(xué)~

    Web端TCP/UDP測(cè)試工具,方便大家進(jìn)行各種基于TCP和TDP的模擬測(cè)試。該測(cè)試工具不僅支持TCP和UDP測(cè)試,還支持SSL,使用極為便捷。 按照如下
    的頭像 發(fā)表于 01-08 18:17 ?278次閱讀
    Web端TCP/UDP<b class='flag-5'>測(cè)試工具</b>!小白必學(xué)~

    Modbus測(cè)試工具

    非常實(shí)用的工具,通信測(cè)試前可以用來檢查線路接線和儀表設(shè)置是否正常。
    發(fā)表于 12-31 13:38 ?3次下載

    華為云 X 實(shí)例 CPU 性能測(cè)試詳解與優(yōu)化策略

    引言 ? 1. 測(cè)試環(huán)境搭建 ? 1.1 測(cè)試實(shí)例的選擇 ? 1.2 CPU性能測(cè)試工具介紹 ? 1.3 安裝和配置Sysbench ? 2. CPU性能
    的頭像 發(fā)表于 12-30 14:52 ?170次閱讀
    華為云 X 實(shí)例 CPU 性能<b class='flag-5'>測(cè)試</b>詳解與優(yōu)化<b class='flag-5'>策略</b>

    嵌入軟件單元/集成測(cè)試工具專業(yè)分析

    軟件開發(fā)設(shè)計(jì)的單元測(cè)試工具,其獨(dú)特的功能和優(yōu)勢(shì)使其在市場(chǎng)中占據(jù)了一席之地。本文將對(duì)WinAMS進(jìn)行深入分析,并將其與其他測(cè)試工具進(jìn)行對(duì)比,探討其在功能、易用性和兼容性等方面的優(yōu)點(diǎn)。 1. WinAMS概述 WinAMS(Wind
    的頭像 發(fā)表于 11-19 16:41 ?298次閱讀

    什么是回歸測(cè)試_回歸測(cè)試測(cè)試策略

    是否在新軟件版本上再次出現(xiàn)。 2、測(cè)試策略 回歸測(cè)試策略一般由測(cè)試經(jīng)理或測(cè)試組長(zhǎng)制定,初級(jí)軟件
    的頭像 發(fā)表于 11-14 16:44 ?364次閱讀

    CAN總線測(cè)試工具選擇與使用

    在現(xiàn)代汽車和工業(yè)控制系統(tǒng)中,CAN總線因其高可靠性和靈活性而成為首選的通信協(xié)議。為了確保CAN網(wǎng)絡(luò)的性能和可靠性,工程師需要使用專業(yè)的測(cè)試工具來監(jiān)控、分析和診斷網(wǎng)絡(luò)問題。 CAN總線測(cè)試工具的類型
    的頭像 發(fā)表于 11-12 10:16 ?1010次閱讀

    CAN總線測(cè)試工具的主要功能

    CAN總線測(cè)試工具是用于測(cè)試CAN(Controller Area Network)總線通信的軟件或硬件工具,其功能豐富且多樣化。以下是CAN總線測(cè)試工具的主要功能,以分點(diǎn)表示和歸納:
    的頭像 發(fā)表于 06-25 16:02 ?1205次閱讀

    6月27日云技術(shù)研討會(huì) | 中央集中架構(gòu)新車型功能和網(wǎng)絡(luò)測(cè)試解決方案

    本次研討會(huì)經(jīng)緯恒潤(rùn)將結(jié)合業(yè)務(wù)團(tuán)隊(duì)多年來在EE開發(fā)和測(cè)試領(lǐng)域的工程實(shí)踐經(jīng)驗(yàn),分享探討新架構(gòu)車型EE功能和網(wǎng)絡(luò)TSN、DDS測(cè)試新的解決方案,聚焦在SOA
    的頭像 發(fā)表于 06-22 18:40 ?1211次閱讀
    6月27日云技術(shù)研討會(huì) | 中央集中架構(gòu)新車型功能和網(wǎng)絡(luò)<b class='flag-5'>測(cè)試</b>解決方案

    接口測(cè)試工具有哪些種類

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

    工具工具——映射與調(diào)度、模擬與驗(yàn)證、開發(fā)與測(cè)試工具

    本篇文章將重點(diǎn)介紹工具鏈的工具相關(guān)知識(shí),我們將從工具鏈的基本概念出發(fā),重點(diǎn)介紹工具鏈中的映射和調(diào)
    的頭像 發(fā)表于 05-16 14:30 ?3216次閱讀
    <b class='flag-5'>工具</b>鏈<b class='flag-5'>工具</b>——映射與調(diào)度、模擬與驗(yàn)證、開發(fā)與<b class='flag-5'>測(cè)試工具</b>

    TSN和DDS測(cè)試解決方案

    北匯信息提供的TSN/DDS測(cè)試系統(tǒng),測(cè)試工具鏈多樣化:提供Vector、TSN Systems、Spirent、臻融科技全套測(cè)試解決方案,滿足不同
    的頭像 發(fā)表于 05-10 09:29 ?689次閱讀
    TSN和<b class='flag-5'>DDS</b><b class='flag-5'>測(cè)試</b>解決方案

    嵌入軟件單元測(cè)試工具的作用

    嵌入軟件單元測(cè)試工具是現(xiàn)代軟件開發(fā)過程中不可或缺的一環(huán)。它的作用在于幫助開發(fā)人員對(duì)軟件中的各個(gè)單元進(jìn)行測(cè)試,以確保其功能的正確性和穩(wěn)定性。單元測(cè)試是軟件開發(fā)過程中的一種測(cè)試方法,通過對(duì)
    的頭像 發(fā)表于 04-23 15:31 ?468次閱讀
    嵌入軟件單元<b class='flag-5'>測(cè)試工具</b>的作用

    DDS協(xié)議測(cè)試實(shí)踐及問題分析

    在上一篇文章中,我們對(duì)DDS協(xié)議測(cè)試策略、方法和工具進(jìn)行了詳細(xì)的介紹。本文旨在進(jìn)一步
    的頭像 發(fā)表于 04-12 08:26 ?655次閱讀
    <b class='flag-5'>DDS</b><b class='flag-5'>協(xié)議</b><b class='flag-5'>測(cè)試</b>實(shí)踐及問題分析

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

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