999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于TCP與UDP通訊的設備自動化接口測試方法

2022-12-01 01:06:10左登超
計算機測量與控制 2022年11期
關鍵詞:指令設備

左登超

(中車青島四方車輛研究所有限公司,山東 青島 266031)

0 引言

TCP與UDP以太網通訊在各行各業應用十分廣泛。TCP與UDP的通訊種類多且配置靈活,在不同的應用場景下,以太網通訊控制設備的通訊方式不盡相同[1]。為了確保各類以太網控制設備在運行過程中的穩定性,需要在產品投入運行前進行接口測試工作[2]。

針對以太網控制設備的接口測試方法較少,傳統的測試方式是將PC機與以太網控制設備相連,利用網絡調試工具,向被測設備發送原始數據指令,觀察設備的動作是否與預期一致;或者抓取被測設備發出的數據,人工進行數據分析,判斷設備的工作情況[3];另一種測試方式是針對不同的設備需求,編寫設備測試軟件,由測試人員進行手動點擊軟件相關功能按鍵進行指令發送,觀察設備的動作或者設備回復數據,判斷是否達到預期效果[4]。

傳統的測試方法完全依賴于人工手動測試,通過組合原始數據指令進行測試并觀察結果,效率非常低,且易出錯;如果涉及到的以太網通訊種類較多,數據量較大時,使用網絡調試工具則不能滿足測試的需求[5];開發測試軟件,需要按照特定被測設備進行開發;由于軟件是新開發的,沒有經過實踐,軟件本身可能存在缺陷,需要經過一段時間的調試才能投入使用,使用過程中也不能確保其功能完全正確,造成測試工作停滯,轉而解決調試軟件本身的問題[6]。在軟件的修改過程中,為了不引起新的錯誤,測試人員需要進行大量重復測試,而手動測試回歸性差,無法適應軟件修改需求,導致軟件可能存在大量缺陷[7]。借助基于TCP與UDP通訊的設備自動化接口測試方法,根據用戶測試指令自動完成以TCP與UDP為通訊方式的控制設備的接口測試,為設備的穩定運行提供保障。

1 自動化接口測試裝置結構及原理

基于TCP與UDP通訊的設備自動化接口測試裝置如圖1所示。裝置包含電源板卡、CPU板卡、網口擴展板卡。其中網口擴展板卡有兩個M12-4芯以太網口,通過背板連接至CPU,為CPU提供擴展網口;CPU板卡有1個M12-4芯以太網口,系統采用X86架構,Linux操作系統。該設備包含兩路測試通道,分別提供3個以太網口進行測試,每個網口IP地址可配置。

圖1 自動化接口測試裝置

TCP與UDP接口測試裝置中運行軟件,解析用戶定義的通訊鏈路信息,指導裝置與被測設備進行通訊鏈路的建立;解析用戶定義的設備通訊協議信息以及數據收發關系信息,按照被測設備協議規定的數據格式,自動進行數據收發,與被測設備進行數據通訊;與工具軟件建立通訊,接收用戶錄入的接口測試指令,執行接口測試。

2 自動化接口測試裝置接口設計

使用自動化接口測試裝置,可以對任意基于TCP與UDP通訊的以太網控制設備進行接口測試工作。TCP可以使用服務器或者客戶端,支持一對一通訊、一對多通訊、多對一通訊、多對多通訊。UDP可以使用單播或者組播,單播支持一對一通訊、組播支持加入一個或者多個組播組通訊[8]。

2.1 TCP服務器接口設計

裝置網口開啟一個TCP服務器,接收被測設備一個或者多個TCP客戶端的連接,即TCP服務器一對一或一對多通訊[9]。接口示意圖如圖2所示,每路TCP客戶端連接可以在相同或者不同的被測設備上,此處僅指出每路TCP協議鏈路連接,同下。

圖2 TCP服務器一對一、一對多通訊接口

裝置網口開啟多個TCP服務器,每個TCP服務器接受一個或者多個TCP客戶端的連接,即TCP服務器多對一或多對多通訊[10]。接口示意圖如圖3所示。

圖3 TCP服務器多對一、多對多通訊接口

2.2 TCP客戶端接口設計

裝置網口開啟一個TCP客戶端,連接被測設備一個或者多個TCP服務器,即TCP客戶端一對一或一對多通訊[11]。接口示意圖如圖4所示。

圖4 TCP客戶端一對一、一對多通訊接口

裝置網口開啟多個TCP客戶端,連接被測設備一個或者多個TCP服務器,即TCP客戶端多對一或多對多通訊[12]。接口示意圖如圖5所示。

圖5 TCP客戶端多對一、多對多通訊接口

2.3 UDP單播接口設計

裝置網口開啟一個或者多個UDP單播,與被測設備進行一對一通訊[13];接口示意圖如圖6所示。

圖6 UDP單播通訊

2.4 UDP組播接口設計

裝置網口加入一個或者多個組播組,與被測設備進行通訊[14];接口示意圖如圖7所示。

圖7 UDP組播通訊

2.5 TCP與UDP組合接口設計

裝置每路網口均支持TCP服務器、TCP客戶端、UDP單播、UDP組播的任意組合,組合接口的設計可以參考2.1~2.4。

1)TCP服務器、TCP客戶端組合;

2)TCP服務器、UDP單播組合;

3)TCP服務器、UDP組播組合;

4)TCP客戶端、UDP單播組合;

5)TCP客戶端、UDP組播組合;

6)UDP單播、UDP組播組合;

7)TCP服務器、TCP客戶端、UDP單播組合;

8)TCP服務器、TCP客戶端、UDP組播組合;

9)TCP服務器、UDP單播、UDP組播組合;

10)TCP客戶端、UDP單播、UDP組播組合;

11)TCP服務器、TCP客戶端、UDP單播、UDP組播組合。

3 自動化接口測試裝置軟件設計

自動化接口測試裝置內運行程序,與被測設備進行通訊鏈路的建立與管理、按照被測設備的通信協議進行數據收發、接收工具軟件的測試指令,自動化執行接口測試工作。工作原理如圖8所示。

圖8 接口自動化測試流程圖

1)軟件運行后,讀取通訊配置文件,獲取與被測設備的通訊方式,指導裝置與被測設備建立通訊鏈接。自動化接口測試裝置使用的通訊配置文件各字段如表1所示。

2)讀取數據配置文件。裝置與被測設備鏈路下的通訊數據由數據配置文件定義,當軟件讀取到數據標識信息后,在內存中分配該數據的存儲信息,一方面自動化接口測試裝置根據此內存,進行數據的發送或者存儲接收到被測設備發送的對應數據;另一方面接收工具軟件發送的測試指令,根據指令中攜帶的鏈路名稱、數據標識、字節偏移、位偏移信息,進行內存數據的設置與獲取。數據配置文件各字段如表2所示。

表1 通訊配置文件字段含義

3)讀取數據收發關系配置文件。指導自動化接口測試裝置如何發送與被測設備的通訊數據,收發關系配置文件各字段如表3所示;

4)根據通訊配置文件信息,建立與被測設備的通訊并管理通訊過程;

5)針對每一個通訊鏈路,開啟數據收發線程,根據數據配置文件以及收發關系配置文件,開始與被測設備進行數據通訊;

6)初始化與工具軟件的TCP通訊,用以接收工具軟件發送的測試指令;自動化接口測試裝置支持的測試指令種類如表4所示;

設置指令:工具軟件將具體鏈路名稱、數據標識、字節偏移、位偏移信息發送給自動化接口測試裝置,裝置接收到該信息后,將對應內存中的數據進行更新,由后臺線程自動獲取內存數據進行發送,強制指令只能設置裝置發送方向的數據[15];

表2 數據配置文件字段含義

表3 收發關系配置文件字段含義

延時指令:工具軟件將具體的延時時間發送給自動化接口測試裝置,裝置接收到該信息后,會延時相應的時間,再處理其他測試指令[16];

心跳指令:工具軟件將具體鏈路名稱、數據標識、字節偏移、位偏移、累加步長n、累加頻率f信息發送給自動化接口測試裝置,裝置接收到該信息后,以累加頻率f,將當前值累加n,向內存中的數據進行更新[17];

表4 測試指令類型說明

上升沿指令:工具軟件將具體鏈路名稱、數據標識、字節偏移、位偏移、時間t信息發送給自動化接口測試裝置,裝置接收到該信息后,將對應內存中的數據先設置成0,保持時間t,然后設置為1,由后臺線程自動獲取內存數據進行發送;

下升沿指令:工具軟件將具體鏈路名稱、數據標識、字節偏移、位偏移、時間t信息發送給自動化接口測試裝置,裝置接收到該信息后,將對應內存中的數據先設置成1,保持時間t,然后設置為0,由后臺線程自動獲取內存數據進行發送[18];

遞增指令:工具軟件將具體鏈路名稱、數據標識、字節偏移、位偏移、最小值、最大值、步長n、頻率f信息發送給自動化接口測試裝置,裝置接收到該信息后,以頻率f,將當前值從最小值開始累加,每次累加步長n,直至累加到最大值后保持,向內存中的數據進行更新,由后臺線程自動獲取內存數據進行發送;

遞減指令:工具軟件將具體鏈路名稱、數據標識、字節偏移、位偏移、最小值、最大值、步長n、頻率f信息發送給自動化接口測試裝置,裝置接收到該信息后,以頻率f,將當前值從最大值開始遞減,每次遞減步長n,直至遞減到最小值后保持,向內存中的數據進行更新,由后臺線程自動獲取內存數據進行發送[19];

系統時間年指令:工具軟件將具體鏈路名稱、數據標識、字節偏移、位偏移信息發送給自動化接口測試裝置,裝置接收到該信息后,從當前系統時間中獲取年的數據,向內存中的數據進行更新,由后臺線程自動獲取內存數據進行發送;

系統時間月指令:工具軟件將具體鏈路名稱、數據標識、字節偏移、位偏移信息發送給自動化接口測試裝置,裝置接收到該信息后,從當前系統時間中獲取月的數據,向內存中的數據進行更新,由后臺線程自動獲取內存數據進行發送;

系統時間日指令:工具軟件將具體鏈路名稱、數據標識、字節偏移、位偏移信息發送給自動化接口測試裝置,裝置接收到該信息后,從當前系統時間中獲取日的數據,向內存中的數據進行更新,由后臺線程自動獲取內存數據進行發送;

系統時間時指令:工具軟件將具體鏈路名稱、數據標識、字節偏移、位偏移信息發送給自動化接口測試裝置,裝置接收到該信息后,每小時從當前系統時間中獲取時的數據,向內存中的數據進行更新,由后臺線程自動獲取內存數據進行發送;

系統時間分指令:工具軟件將具體鏈路名稱、數據標識、字節偏移、位偏移信息發送給自動化接口測試裝置,裝置接收到該信息后,每分鐘從當前系統時間中獲取分的數據,向內存中的數據進行更新,由后臺線程自動獲取內存數據進行發送;

系統時間秒指令:工具軟件將具體鏈路名稱、數據標識、字節偏移、位偏移信息發送給自動化接口測試裝置,裝置接收到該信息后,每秒鐘從當前系統時間中獲取秒的數據,向內存中的數據進行更新,由后臺線程自動獲取內存數據進行發送[20];

范圍內指令:工具軟件將具體鏈路名稱、數據標識、字節偏移、位偏移、極大值、極小值信息發送給自動化接口測試裝置,裝置接收到該信息后,取極大值與極小值范圍內的隨機數據,向對應內存中的數據進行更新,由后臺線程自動獲取內存數據進行發送;

獲取指令:工具軟件將具體鏈路名稱、數據標識、字節偏移、位偏移信息發送給自動化接口測試裝置,裝置接收到該信息后,從對應內存中取出一次實時數據,然后通過TCP通訊向工具軟件發送結果;

7)自動化接口測試裝置收到測試指令后,根據指令中攜帶的鏈路名稱、數據標識、字節偏移、位偏移信息,操作內存數據,從分配的內存中設置或者獲取數據;當獲取到數據后,向工具軟件返回獲取到的數據,工具軟件根據此數據判斷執行是否通過;

4 自動化接口測試實驗結果與分析

4.1 自動化接口測試實驗步驟

由于自動化接口測試裝置可以測試的情況比較多,以TCP服務器一對一通訊為例,即被測設備作為TCP客戶端,裝置作為TCP服務器,對被測設備進行接口測試,測試系統連接如圖9所示。

圖9 測試系統連接

測試前需要按照被測設備的要求修改裝置的IP地址。通過修改腳本文件即可配置本裝置的網口IP地址。IP地址腳本內如下:

#eth1

ifconfig eth1 down

ifconfig eth1 172.30.131.60 netmask 255.255.255.0 up

#eth2

ifconfig eth2 down

ifconfig eth2 172.30.131.61 netmask 255.255.255.0 up

#eth3

ifconfig eth3 down

ifconfig eth3 172.30.131.62 netmask 255.255.255.0 up

eth1、eth2、eth3分別分別對應設備上的三個網口;

被測設備的TCP客戶端信息:172.31.41.50,端口8001,與其通訊的TCP服務器信息:IP地址172.31.41.36,端口8000;由裝置主動發送1001數據,然后被測設備回復1002數據。

步驟1:通過交換機,將被測設備、工具軟件以及設備進行組網連接;

步驟2:按照設備IP地址修改方法,修改腳本文件eth1的IP地址:

#eth1

ifconfig eth1 down

ifconfig eth1 172.31.41.36 netmask 255.255.255.0 up

步驟3:編寫通訊配置文件,如表5所示。

表5 通訊配置文件內容

此配置文件供裝置使用,由于被測設備作為TCP客戶端,需要使用裝置模擬與被測設備通訊的TCP服務器;配置文件中,通訊類型填寫TCP,通訊方式填寫服務器,通訊本方信息填寫與被測設備通訊的TCP服務器的地址端口信息,通訊對方信息填寫被測設備的信息;

步驟4:編寫數據配置文件如表6所示,其中1001數據由接口測試裝置主動發出,1002為裝置接收被測設備返回的數據;該配置文件供裝置和工具軟件使用;

表6 數據配置文件內容

步驟5:編寫數據收發關系配置文件,文件內容如表7所示。

表7 收發關系配置文件內容

此配置文件供自動化接口測試裝置使用,內容描述了裝置Ch-1通訊鏈路下,收取1002的數據,主動發送1001的數據。

步驟6:將上述配置文件通過FTP工具導入設備,并重啟接口測試裝置;

步驟7:在工具軟件中編寫測試指令,設置或者獲取變量的數據,下發至接口測試裝置;

步驟8:工具軟件根據設備返回的數據,判斷測試是否通過。

4.2 實驗結果及分析

在自動化執行完接口測試后,工具軟件會將測試結果保存成表格的形式,結果如表8所示。

表8 自動化接口測試結果記錄

保存的結果記錄中,會記錄工具軟件每次執行的動作,收取自動化接口測試裝置返回的變量名以及對應的實際數據,工具軟件可以根據動作中的期望,自動判斷測試的結果是否正確,并在測試結論中給出Pass或者Fail,方便測試人員查看測試結果。

5 結束語

借助基于TCP與UDP通訊的設備自動化接口測試方法,能夠進行TCP服務器、TCP客戶端、UDP單播、UDP組播通以及四種通訊方式任意組合的接口測試;接口測試裝置對外提供6個測試網口,IP地址可配置,可以通過數據配置文件以及數據收發關系配置文件,指導自動化接口測試裝置的數據收發,使得測試不同被測設備時無需修改代碼,提高了測試的靈活性、通用性以及效率,為設備的穩定運行提供保障。

猜你喜歡
指令設備
聽我指令:大催眠術
諧響應分析在設備減振中的應用
基于VB6.0+Access2010開發的設備管理信息系統
ARINC661顯控指令快速驗證方法
測控技術(2018年5期)2018-12-09 09:04:26
LED照明產品歐盟ErP指令要求解讀
電子測試(2018年18期)2018-11-14 02:30:34
基于MPU6050簡單控制設備
電子制作(2018年11期)2018-08-04 03:26:08
殺毒軟件中指令虛擬機的脆弱性分析
電信科學(2016年10期)2016-11-23 05:11:56
500kV輸變電設備運行維護探討
工業設計(2016年12期)2016-04-16 02:52:00
如何在設備采購中節省成本
原來他們都是可穿戴設備
消費者報道(2014年7期)2014-07-31 11:23:57
主站蜘蛛池模板: 亚洲AV无码久久天堂| 人妻21p大胆| 亚洲精品男人天堂| 91成人免费观看| 免费va国产在线观看| 97超级碰碰碰碰精品| 好久久免费视频高清| a亚洲视频| 高清免费毛片| 婷婷伊人五月| 午夜精品久久久久久久无码软件 | 亚洲V日韩V无码一区二区| 无码国内精品人妻少妇蜜桃视频| 国产91无码福利在线 | 91九色国产porny| 无码日韩人妻精品久久蜜桃| 中文字幕伦视频| 国产精品免费福利久久播放| 欧美国产日产一区二区| 国产精品网址在线观看你懂的| 91精品国产91久无码网站| 九九视频免费看| 午夜毛片福利| 欧洲亚洲欧美国产日本高清| 又粗又硬又大又爽免费视频播放| 欧美成人aⅴ| 啪啪免费视频一区二区| 日本亚洲欧美在线| vvvv98国产成人综合青青| 91精品网站| 国产亚洲精品无码专| 免费看久久精品99| 日韩av电影一区二区三区四区| 高清久久精品亚洲日韩Av| 成人精品午夜福利在线播放| 中文字幕亚洲乱码熟女1区2区| 亚洲无码A视频在线| www.亚洲一区| 国内精品伊人久久久久7777人| 日本精品视频一区二区| 国产亚洲欧美在线中文bt天堂| 国产欧美日韩综合一区在线播放| 国产丝袜91| 狠狠色香婷婷久久亚洲精品| 91精品视频在线播放| 久久五月天综合| 久久久受www免费人成| 人妻一本久道久久综合久久鬼色| 亚洲一区二区约美女探花| 91精品最新国内在线播放| 国产精品亚欧美一区二区三区| 亚洲一区二区三区香蕉| 国产一区二区三区在线无码| 日本午夜精品一本在线观看 | 成人亚洲天堂| 尤物国产在线| 国产真实乱人视频| 91青青草视频| 精品1区2区3区| 亚洲精品卡2卡3卡4卡5卡区| 欧美日韩v| 国产精欧美一区二区三区| 免费xxxxx在线观看网站| 欧美另类图片视频无弹跳第一页 | 国产色伊人| 精品国产福利在线| 干中文字幕| 2020国产在线视精品在| 婷婷伊人五月| 日本中文字幕久久网站| 精品一区二区无码av| 色综合热无码热国产| 国产欧美视频在线观看| 日韩最新中文字幕| 日韩中文字幕免费在线观看| 国产亚洲精久久久久久无码AV| 91精品日韩人妻无码久久| 美女无遮挡拍拍拍免费视频| 国产高清无码第一十页在线观看| 国产情精品嫩草影院88av| 操国产美女| 国产爽歪歪免费视频在线观看|