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
主站蜘蛛池模板: 色色中文字幕| 2019年国产精品自拍不卡| 在线日韩日本国产亚洲| 精品亚洲国产成人AV| 四虎成人在线视频| 毛片卡一卡二| 日韩一级二级三级| 久久久久青草线综合超碰| 日韩 欧美 国产 精品 综合| 国语少妇高潮| 国产剧情无码视频在线观看| 亚洲天堂福利视频| 曰韩免费无码AV一区二区| 国产麻豆aⅴ精品无码| 国产打屁股免费区网站| 国产黄网永久免费| 国产在线精品99一区不卡| 成人在线亚洲| 中文字幕免费播放| 国产精品永久不卡免费视频| av色爱 天堂网| 免费 国产 无码久久久| 九九九九热精品视频| AV老司机AV天堂| 国产综合精品一区二区| 欧美国产精品不卡在线观看| 亚洲欧美不卡中文字幕| 思思热精品在线8| 色精品视频| 日韩视频福利| 在线不卡免费视频| 欧美日在线观看| 久久国语对白| 欧美精品aⅴ在线视频| 无码免费视频| 91免费精品国偷自产在线在线| 国内精品久久久久久久久久影视 | 韩日无码在线不卡| 好久久免费视频高清| 少妇极品熟妇人妻专区视频| 好吊色妇女免费视频免费| 成人福利在线视频免费观看| 2021最新国产精品网站| 欧美另类视频一区二区三区| 国产精品久久自在自线观看| 欧美在线精品怡红院| 欧美黑人欧美精品刺激| 视频一本大道香蕉久在线播放| 91精品国产一区| 国产在线观看91精品亚瑟| 国产一区二区三区免费观看| 色综合久久88色综合天天提莫| 欧美日韩午夜视频在线观看| 2020国产免费久久精品99| 国产亚洲视频在线观看| 国产精品va| 国产高颜值露脸在线观看| 大学生久久香蕉国产线观看| 97在线国产视频| 99久久性生片| 91精品国产91久久久久久三级| 日韩精品欧美国产在线| 精品成人一区二区三区电影| 欧美日本在线一区二区三区| 中文国产成人精品久久| 欧美成人一级| 人妻21p大胆| 久久久久九九精品影院| 欧美无专区| 91国内视频在线观看| 999福利激情视频| 一区二区三区国产| 亚洲日韩精品无码专区97| 国产特一级毛片| 午夜爽爽视频| av午夜福利一片免费看| 亚洲精品无码在线播放网站| 久久不卡精品| 亚洲V日韩V无码一区二区| 国产精品久久久久久影院| 8090成人午夜精品| 国产成人福利在线视老湿机|