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

基于struct結構的接口測試數據解析軟件設計與實現

2018-10-13 07:58:18劉暉虎
現代計算機 2018年23期
關鍵詞:結構

劉暉虎

(工業和信息化部電子第五研究所,廣州510610)

0 引言

接口測試是針對軟件之間接口的一種測試,主要用于檢測外部系統與系統之間以及內部各個子系統之間的交互點。測試的重點是要檢查數據的交換、傳遞和控制管理過程,以及系統間的相互邏輯依賴關系等。目前,在軟件測試過程中,測試人員通常是使用通用的接口測試工具(如串口調試助手、網絡調試工具等)對被測接口進行通信數據發送與接收;在此過程中,測試人員通過人工手段對照接口協議文件的定義逐個字、字節甚至比特位去解析接口數據報文,再根據具體測試場景驗證數據的正確性。這種人工數據解析方式工作效率偏低、易出錯,且占用了整個測試過程中大量的時間與精力,導致前期的接口測試設計和后期的接口測試結果驗證工作時間不足,進而影響整體測試效率和效果。

基于此,提出一種基于C語言struct結構的接口數據解析方法,主要過程是將接口通信協議中定義的各報文格式采用struct結構進行描述,再使用Visual C++開發相應的接口數據解析軟件,該軟件讀取struct結構的協議描述文件,并設置當前測試場景下的字長、接口數據字節順序、協議描述字節順序等參數,測試人員僅需提供待解析的接口數據報文,以及選擇其對應的協議格式名稱,接口數據解析軟件便能自動完成數據解析工作,以列表形式給出該報文各字段的取值,供測試人員開展數據驗證工作;這種數據解析方法能夠將測試人員從繁重的數據解析工作中解放出來,將更多精力投放到測試設計、測試驗證工作中,有效地提高測試效率。

1 協議描述方法

根據C語言的規定,“結構”是一種構造類型,它由若干個“成員”組成,每個成員是一個基本數據類型或者是一個構造類型。定義一個結構的一般形式為:

struct結構名

{

//成員列表

};

成員列表由若干個成員組成,每個成員都是結構的一個組成部分。對每個成員也必須作類型說明,其形式為:

類型說明符成員名;

成員名的命名應符合標識符的書寫規定。以下是一個結構定義的例子:

struct student

{

char name[20];

int age;

};

在這個結構定義中,結構名為student,該結構由2個成員組成。第一個成員為name,類型為字符數組;第二個成員為age,類型為整型。

下面是某型軟件接口通信協議中一個普通數據幀格式示例:

表1 接口協議格式示例

采用struct結構描述該數據幀協議格式如下:(注:為方便測試人員理解,標識符命名應支持中文)

struct數據幀

{

byte起始標志位; //固定為0x7E

byte地址位; //取值范圍:0x60~0x6B

byte彈位號; //1號彈位:0x11,2號彈位:0x22,3 號彈位:0x33,

4號彈位:0x44,5號彈位:0x55,6號彈位:0x66

byte彈動延遲信息_高字節;

byte彈動延遲信息_中字節;

byte彈動延遲信息_低字節;

short校驗位;

byte結束標志位; //固定為0x7E

};

2 軟件設計實現

接口數據解析流程主要分為以下幾個階段,如圖1所示:

(1)編寫并導入協議描述文件

(2)設置參數,包括接口數據字長、協議字節順序、接口數據字節順序

(3)輸入待解析報文

(4)選擇協議格式名稱

(5)輸出報文解析結果列表

具體的實現過程為:

(1)編寫并導入協議文件

將被測軟件的接口通信協議按照struct結構要求編寫協議描述文件,每1個報文格式對應1個struct結構體,且結構體名稱即為報文名稱,文件保存為.h文件形式。

圖1 接口數據解析軟件工作流程

通常在被測軟件源代碼中已有用于描述接口協議的.h文件,測試人員僅需以該文件為基礎進行適當修改,例如將變量名更改為中文,添加各變量的注釋等。

協議文件準備好后,便可作為配置文件,在接口數據解析軟件界面進行導入。接口數據解析軟件應具備語法驗證功能,對導入的協議文件中struct結構體源代碼進行語法檢查,并報告錯誤。

(2)設置協議字節順序、設置接口數據字節順序、設置接口數據字長

考慮到在不同運行環境下,計算機字長是不同的,因此接口數據解析軟件應能夠設置接口數據字長(單字節、2字節、4字節等)。當接口數據字長設置為多字節時,還應考慮協議描述文件中每個字的高低字節順序,以及接口數據的高低字節順序。具體如圖2所示。

圖2 參數設置界面

(3)數據解析

導入協議描述文件并設置好相應參數后,測試人員便可以將接口測試工具接收到的報文數據輸入接口數據解析軟件中,并選定協議列表中某一個報文名稱,接口數據解析軟件按照協議描述文件中定義的struct結構自動對報文數據進行解析,并以列表形式顯示各字段的取值,供測試人員開展下一步的數據驗證工作。如圖3所示:

圖3 數據解析結果顯示界面

3 結語

接口數據解析軟件已成功應用于多個型號的軟件測試中,將測試人員開展接口測試時的主要精力從解析接口通信報文工作中解放出來,投入到接口測試設計、結果驗證中,有效地提高了測試效率;

同時,將接口數據解析模塊封裝為Windows動態鏈接庫,應用于1553B總線自動化測試工具、串口調試工具等接口測試工具中,幫助測試人員快速解析其關注的接口數據,給出解析結果供后端開展自動化結果驗證、全流程自動化測試等。

猜你喜歡
結構
DNA結構的發現
《形而上學》△卷的結構和位置
哲學評論(2021年2期)2021-08-22 01:53:34
論結構
中華詩詞(2019年7期)2019-11-25 01:43:04
新型平衡塊結構的應用
模具制造(2019年3期)2019-06-06 02:10:54
循環結構謹防“死循環”
論《日出》的結構
縱向結構
縱向結構
我國社會結構的重建
人間(2015年21期)2015-03-11 15:23:21
創新治理結構促進中小企業持續成長
現代企業(2015年9期)2015-02-28 18:56:50
主站蜘蛛池模板: 少妇高潮惨叫久久久久久| 色噜噜狠狠狠综合曰曰曰| 中国成人在线视频| 国产精品亚洲专区一区| 国产免费a级片| 国产永久无码观看在线| 人妻丰满熟妇啪啪| 国产午夜精品一区二区三区软件| 国产精品熟女亚洲AV麻豆| 无码综合天天久久综合网| 亚洲v日韩v欧美在线观看| 永久免费无码成人网站| 国产日韩AV高潮在线| 日韩久草视频| 国产美女免费| www.亚洲一区二区三区| 亚洲成人精品久久| 国产精品成人免费视频99| 免费av一区二区三区在线| 欧美日韩国产成人高清视频| 国产午夜人做人免费视频| 久久午夜夜伦鲁鲁片无码免费 | 欧美亚洲一区二区三区导航| 国产视频一二三区| 欧美日韩午夜视频在线观看| 国产无码精品在线播放| 欧美成人精品欧美一级乱黄| 91精品久久久久久无码人妻| 日韩精品一区二区深田咏美| 国产又色又刺激高潮免费看 | 重口调教一区二区视频| yjizz视频最新网站在线| 色婷婷电影网| 天天综合网站| 婷婷色狠狠干| 国产微拍一区二区三区四区| 亚洲一级毛片在线观播放| 在线播放91| 欧美一区二区自偷自拍视频| 久久无码免费束人妻| 国产精品网拍在线| 麻豆精品国产自产在线| 99久久精品国产精品亚洲| h视频在线播放| 欧美一级片在线| 色偷偷一区二区三区| 欧美日韩理论| 国产一级做美女做受视频| 精品一区二区三区视频免费观看| 青青草欧美| 国产白浆在线| 日韩毛片视频| 激情亚洲天堂| 免费人成又黄又爽的视频网站| 亚洲精品无码日韩国产不卡| 91久久青青草原精品国产| 亚洲视频一区在线| 国产亚洲精品自在久久不卡| 一级黄色网站在线免费看| 国产亚洲高清在线精品99| 国产在线自乱拍播放| 国产精品无码久久久久AV| 性视频一区| 亚洲综合九九| 亚洲永久视频| 成人综合在线观看| 综1合AV在线播放| 国产一区二区福利| 精品色综合| 国产精品欧美日本韩免费一区二区三区不卡| 欧美97色| 亚洲精品va| 久久国产av麻豆| 中文无码毛片又爽又刺激| 91青草视频| 国产乱人伦精品一区二区| 四虎永久免费网站| 国产午夜小视频| 久久综合婷婷| 国产在线无码av完整版在线观看| 午夜三级在线| 久久综合色视频|