亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        一種應(yīng)用于SCADE模型與實(shí)物聯(lián)合仿真測(cè)試的方法

        2021-10-31 12:06:32吳惠妍
        關(guān)鍵詞:環(huán)境模型

        吳惠妍

        (北京全路通信信號(hào)研究設(shè)計(jì)院集團(tuán)有限公司,北京 100070)

        1 概述

        隨著軟件復(fù)雜度的增加,傳統(tǒng)的軟件開發(fā)方法已不能滿足效率和安全性的需求。為解決這一不足,高安全應(yīng)用開發(fā)環(huán)境SCADE應(yīng)運(yùn)而生,SCADE已普遍應(yīng)用于航空航天、國(guó)防、軌道交通等對(duì)安全性要求極高的領(lǐng)域。SCADE開發(fā)的模型在經(jīng)過模型仿真以及模型測(cè)試后可直接生成高安全性的代碼。

        SCADE模型仿真和測(cè)試普遍采用人工編輯輸入數(shù)據(jù)測(cè)試的方式,這使得大多數(shù)的測(cè)試只能手動(dòng)進(jìn)行,沒有測(cè)試輔助工具或者測(cè)試腳本支持?jǐn)?shù)據(jù)生成。而且人工編輯的數(shù)據(jù)由于其與真實(shí)數(shù)據(jù)存在差異,測(cè)試環(huán)境的保真度差,這也會(huì)導(dǎo)致不確定或者不正確的測(cè)試結(jié)果(假陽(yáng)性和假陰性結(jié)果)。此外,在與外部實(shí)物環(huán)境進(jìn)行聯(lián)合測(cè)試時(shí),需要編譯并裝載(load)到目標(biāo)平臺(tái)上,如果發(fā)現(xiàn)新的缺陷(bug),則需要返回模型再次修改,如圖1所示,開發(fā)、仿真、測(cè)試效率亟待提高。

        圖1 傳統(tǒng)仿真流程Fig.1 Traditional simulation process

        如果在模型設(shè)計(jì)階段就能將模型與外部實(shí)物環(huán)境進(jìn)行互聯(lián),測(cè)試環(huán)境的仿真度得以提高,進(jìn)而減少模型生成代碼編譯后裝載到平臺(tái)上產(chǎn)生的錯(cuò)誤,這樣測(cè)試也不會(huì)被視作發(fā)生在瀑布開發(fā)周期后期的一個(gè)階段,而是不斷發(fā)生在迭代、增量和并發(fā)開發(fā)周期的持續(xù)性活動(dòng)完成快速迭代。實(shí)物接入在線仿真環(huán)境如圖2所示。關(guān)鍵技術(shù)在于模型如何與外部實(shí)物通信。

        圖2 實(shí)物在線仿真Fig.2 Online physical simulation

        2 通信模塊設(shè)計(jì)

        SCADE自帶的模型庫(kù)不包含與外界進(jìn)行通信的模塊,需要進(jìn)行單獨(dú)開發(fā)。與外界通信有多種方式,如基于以太網(wǎng)的UDP、TCP通信、串行通信等,本文以最常用的通信為例,闡述SCADE與外界通信的實(shí)現(xiàn)方式。

        UDP發(fā)送模塊中包含數(shù)據(jù)拷貝模塊,該模塊用于將變長(zhǎng)的數(shù)據(jù)格式化為固定長(zhǎng)度的數(shù)據(jù),UDP發(fā)送模塊是導(dǎo)入代碼模塊,是由人工編寫代碼的方式采用C語(yǔ)言實(shí)現(xiàn)的socket通信,實(shí)現(xiàn)根據(jù)socket句柄、IP地址及端口號(hào)完成UDP數(shù)據(jù)的發(fā)送。

        該UDP通信模塊實(shí)現(xiàn)與外部實(shí)物互聯(lián),其特點(diǎn)在于:1)支持?jǐn)?shù)據(jù)錄播及回放功能,可以提高回歸測(cè)試自動(dòng)化的程度;2)UDP通信IP地址和端口號(hào)可配置;3)UDP通信模塊支持多路鏈接,且鏈路之間相互獨(dú)立,沒有任何依賴及干擾。

        2.1 數(shù)據(jù)錄播回放

        UDP通信接收子模塊共有3個(gè)分支,其中,第1個(gè)分支由UDP信息接收(updRecvElt)操作符、數(shù)據(jù)錄入(dataSava)操作符構(gòu)成,該分支用于實(shí)物環(huán)境下的仿真,并同時(shí)錄制數(shù)據(jù);第2個(gè)分支由數(shù)據(jù)下載(dataLoad)操作符構(gòu)成,該分支用于離線環(huán)境的實(shí)現(xiàn)數(shù)據(jù)回放;第3個(gè)分支由UDP信息接收(updRecvElt)操作符構(gòu)成,該分支用于僅在實(shí)物環(huán)境下的仿真,不需要錄制數(shù)據(jù)的場(chǎng)景。

        關(guān)鍵部分包含UDP信息接收操作符、數(shù)據(jù)錄入操作符、數(shù)據(jù)下載操作符,這3個(gè)操作符均為導(dǎo)入代碼模塊(Imported Operator),是由人工編寫C代碼導(dǎo)入實(shí)現(xiàn)的。其中,UDP信息接收操作符用于根據(jù)socket句柄及端口號(hào)完成UDP數(shù)據(jù)的接收;數(shù)據(jù)錄入操作符用于完成每個(gè)測(cè)試用例中測(cè)試數(shù)據(jù)的記錄,每一次記錄形成一個(gè)以"testcase*"命名的文件夾,各端口收集的數(shù)據(jù)分別存儲(chǔ)到不同的命名為"data*.csv"的文件中,如圖3所示,數(shù)據(jù)下載操作符用于完成數(shù)據(jù)的回放,當(dāng)選擇回放記錄條目后,該模塊會(huì)讀取對(duì)應(yīng)的"data*.csv"的數(shù)據(jù)并載入仿真環(huán)境中。

        圖3 數(shù)據(jù)記錄格式Fig.3 Data record format

        2.2 通信參數(shù)配置

        接口設(shè)計(jì)時(shí)采用參數(shù)配置的方式。配置參數(shù)包括端口"port",IP地址"add*",數(shù)據(jù)長(zhǎng)度"dataLen",如圖4所示,使用相關(guān)模塊時(shí),僅需在模塊屬性對(duì)話框中進(jìn)行參數(shù)設(shè)置即可。

        圖4 接口設(shè)計(jì)Fig.4 Interface design

        2.3 鏈接數(shù)量

        被測(cè)模型可能同時(shí)存在多個(gè)與外界通信的接口,且各通信之間需要相互獨(dú)立,不能相互依賴及干擾,因此UDP通信模塊將socket句柄交由外部模型來管理。UDP通信模塊申請(qǐng)socket句柄之后將套接字句柄(socketHander)交由SCADE的"last"變量保存,如圖5所示中的"last’socketHandler"。這樣多個(gè)UDP連接可以通過同一個(gè)UDP信息接收模塊分時(shí)復(fù)用,在不同時(shí)刻通過輸入不同的套接字句柄來實(shí)現(xiàn),UDP通信由模型的輸入?yún)?shù)(socketHanderIn)決定。

        圖5 socketHandler處理Fig.5 socketHandler processing

        3 仿真測(cè)試框架

        SCADE有數(shù)據(jù)流圖和安全狀態(tài)機(jī)兩套建模機(jī)制,分別適合于連續(xù)系統(tǒng)和離散系統(tǒng)建模。本文提供的模型與實(shí)物聯(lián)合仿真測(cè)試框架采用狀態(tài)機(jī)來實(shí)現(xiàn),狀態(tài)機(jī)中有4個(gè)狀態(tài)。

        1)初始(init)狀態(tài)包含索引(indexPlus)操作符。在實(shí)物環(huán)境下仿真測(cè)試時(shí)會(huì)記錄多個(gè)測(cè)試用例(testcase*)。索引操作符用于選定仿真過程從哪個(gè)測(cè)試用例開始載入數(shù)據(jù)。

        2)數(shù)據(jù)回放狀態(tài)(dataReplay)包含無數(shù)據(jù)(noData)模塊和被測(cè)模塊環(huán)境(testEnv)。無數(shù)據(jù)模塊用于判定所選取的數(shù)據(jù)包(一個(gè)測(cè)試用例中可能有多個(gè)數(shù)據(jù)包)是否已讀完,只在有數(shù)據(jù)的時(shí)候才能激活。而被測(cè)模塊環(huán)境是對(duì)被仿真模塊搭建的仿真環(huán)境,被仿真測(cè)試模型SystemUT有6個(gè)通信連接,因此為其搭建了對(duì)應(yīng)的仿真測(cè)試環(huán)境模塊。被仿真測(cè)試模型環(huán)境內(nèi)嵌到一個(gè)初始化操作符中,切換到新的測(cè)試用例之前要先初始化被測(cè)對(duì)象的仿真環(huán)境。

        3)新用例(newCase)狀態(tài)用于在本測(cè)試用例的數(shù)據(jù)包數(shù)據(jù)讀完之后切換至下一個(gè)測(cè)試用例,當(dāng)測(cè)試用例全部讀完并仿真后,進(jìn)入終止(finish)狀態(tài)。

        4)終止(finish)狀態(tài),仿真結(jié)束。

        整個(gè)仿真測(cè)試流程如圖6所示。從第一個(gè)測(cè)試用例開始測(cè)試過程,遍歷測(cè)試用例中所有數(shù)據(jù)包中的數(shù)據(jù)并發(fā)送給被測(cè)對(duì)象,在每個(gè)測(cè)試用例測(cè)試結(jié)束后,需要進(jìn)行測(cè)試仿真環(huán)境的初始化,以便準(zhǔn)備下一個(gè)測(cè)試用例。這樣迭代直至所有測(cè)試用例執(zhí)行完畢,測(cè)試結(jié)束。

        圖6 測(cè)試框架工作流程Fig.6 Test framework workflow

        4 結(jié)論

        相比僅在SCADE內(nèi)部做模型仿真測(cè)試,與外部實(shí)物環(huán)境的聯(lián)合仿真有更多優(yōu)勢(shì):

        1)模型測(cè)試能夠獲得更真實(shí)的測(cè)試數(shù)據(jù)輸入;

        2)省去了繁重的手工編輯測(cè)試數(shù)據(jù)的工作,保證數(shù)據(jù)的有效性,測(cè)試變得更加便捷快速;

        3)數(shù)據(jù)記錄和回放功能使得仿真測(cè)試可以脫離外部實(shí)物環(huán)境也能進(jìn)行同樣真實(shí)度的仿真測(cè)試;

        4)在數(shù)據(jù)記錄完之后的回歸測(cè)試更加方便,可實(shí)現(xiàn)自動(dòng)化。

        猜你喜歡
        環(huán)境模型
        一半模型
        長(zhǎng)期鍛煉創(chuàng)造體內(nèi)抑癌環(huán)境
        一種用于自主學(xué)習(xí)的虛擬仿真環(huán)境
        重要模型『一線三等角』
        重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
        孕期遠(yuǎn)離容易致畸的環(huán)境
        不能改變環(huán)境,那就改變心境
        環(huán)境
        孕期遠(yuǎn)離容易致畸的環(huán)境
        3D打印中的模型分割與打包
        337p日本欧洲亚洲大胆色噜噜 | 亚洲另类自拍丝袜第五页| 久久中文字幕日韩精品| 亚洲一区二区三区av天堂| 成人日韩精品人妻久久一区| 在线欧美中文字幕农村电影| 国产欧美成人| 热热久久超碰精品中文字幕| 男人的天堂手机版av| 亚洲裸男gv网站| 国产特级全黄一级毛片不卡| 少妇被日到高潮的视频| 澳门蜜桃av成人av| 区二区三区玖玖玖| 在线不卡av天堂| 久久婷婷夜色精品国产| 桃红色精品国产亚洲av| 人人妻人人妻人人片av| 久久精品无码专区东京热| 久久精品国产亚洲不卡| 妺妺窝人体色777777| 性欧美暴力猛交69hd| 国产激情一区二区三区成人免费| 色婷婷亚洲精品综合影院| 中文字幕无线码免费人妻| 国产成人无码aⅴ片在线观看| 亚洲精品中文字幕尤物综合 | 亚洲av无码男人的天堂在线| 亚洲成AV人片在一线观看| 国产一区二区av在线免费观看| 最新日本一道免费一区二区| 亚洲欲色欲香天天综合网| 久久精品国产精品亚洲婷婷| 人妻夜夜爽天天爽三区丁香花| 国产亚洲av综合人人澡精品 | a级毛片内射免费视频| 日本中文字幕一区二区高清在线| 精品国产一区二区三区香| 一区二区三区av波多野结衣| 日韩精品区欧美在线一区| 色小姐在线视频中文字幕|