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
主站蜘蛛池模板: 亚洲一区二区成人| 99热这里只有精品国产99| 国产91精品调教在线播放| 91丝袜美腿高跟国产极品老师| 波多野结衣无码中文字幕在线观看一区二区| 色综合天天视频在线观看| 亚洲Va中文字幕久久一区| 囯产av无码片毛片一级| 久一在线视频| 国产不卡网| 国产国模一区二区三区四区| 久久午夜夜伦鲁鲁片无码免费| 成人综合久久综合| 亚欧成人无码AV在线播放| 成年免费在线观看| 日韩精品专区免费无码aⅴ | 黄色网站不卡无码| 女人18毛片一级毛片在线 | 久久伊人久久亚洲综合| 18禁高潮出水呻吟娇喘蜜芽| 久久国产香蕉| 一本一本大道香蕉久在线播放| 久久www视频| 国产精品va| 日本人妻丰满熟妇区| 亚洲成肉网| 国产成人AV男人的天堂| 一本大道香蕉中文日本不卡高清二区| 中文字幕va| 成人日韩精品| 中文无码精品A∨在线观看不卡 | 天堂av高清一区二区三区| 国产女人水多毛片18| av一区二区三区在线观看| 久久综合色视频| 99这里只有精品在线| 国产成年无码AⅤ片在线| 国产欧美精品午夜在线播放| 国产人成在线视频| 五月天香蕉视频国产亚| 国产自在线拍| 欧美精品一区在线看| 亚洲人成网站在线播放2019| 亚洲精品在线91| 亚洲天堂自拍| 最新无码专区超级碰碰碰| 狠狠色成人综合首页| 四虎AV麻豆| 日本午夜精品一本在线观看 | 无码丝袜人妻| 99re热精品视频国产免费| 在线观看精品国产入口| 国产成人一级| 国产成人91精品免费网址在线| 婷婷成人综合| 中文字幕丝袜一区二区| 露脸国产精品自产在线播| 亚洲欧洲日韩综合| 色视频久久| 国产成人综合欧美精品久久| 日本AⅤ精品一区二区三区日| Aⅴ无码专区在线观看| 日韩高清中文字幕| 在线无码九区| 一区二区三区四区精品视频| 欧美成人区| 国产玖玖玖精品视频| 呦系列视频一区二区三区| 久久久黄色片| 成人在线天堂| 91年精品国产福利线观看久久 | 成年人视频一区二区| 一级做a爰片久久免费| 好紧太爽了视频免费无码| 91在线播放免费不卡无毒| 欧美精品导航| 素人激情视频福利| 欧美一区中文字幕| 欧美三级日韩三级| 亚洲精品视频免费| 亚洲日本精品一区二区| 国产精品片在线观看手机版|