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

軟件接口測試工具IOTest在接口測試中的研究與應(yīng)用

2019-03-23 01:20:36
關(guān)鍵詞:模型

賈 虹

(南京模擬技術(shù)研究所質(zhì)量處軟件測試中心,南京 210000)

1 引言

在軟件研發(fā)的過程中,軟件測試作為質(zhì)量把關(guān)的重要環(huán)節(jié),已經(jīng)更加引起國內(nèi)軟件企業(yè)的關(guān)注。隨著自動(dòng)化工程技術(shù)的快速發(fā)展,軟件規(guī)模及復(fù)雜度的迅速提升,自動(dòng)化軟件測試在軟件開發(fā)過程中的作用越來越重要。雖然目前自動(dòng)化軟件測試技術(shù)已然取得了明顯的進(jìn)步,但針對某些不具備輸入輸出測試條件的配置項(xiàng)的軟件接口測試,仍沒有便捷靈活的、統(tǒng)一的測試工具及相關(guān)標(biāo)準(zhǔn)可利用并遵循。本文以IOTest為工具,介紹了一種自動(dòng)化接口測試方法。

2 軟件接口測試的方法和工具

在多模塊軟件的各子系統(tǒng)與主系統(tǒng)聯(lián)調(diào)中,接口測試采用黑盒方法,對各系統(tǒng)進(jìn)行正確性檢查和排錯(cuò)。運(yùn)用該方法具體包括:對軟件需求中的輸入與預(yù)期輸出之間的一致性進(jìn)行檢查;檢查代碼是否完成預(yù)定的功能;不包括代碼的書寫規(guī)范與潛在的邏輯風(fēng)險(xiǎn)。目前進(jìn)行軟件接口測試的工具有SOAPui、Jemeter及本文所提到的IOTest。

3 IOTest 簡介

接口測試是提高軟件質(zhì)量的有效辦法,但是基于系統(tǒng)測試的環(huán)境限制,很多輸入項(xiàng)依賴于其他分系統(tǒng)的輸出。在分系統(tǒng)未驗(yàn)證或未完成的情況下,該輸出不具備作為被測系統(tǒng)輸入的充分條件。一直以來,網(wǎng)絡(luò)調(diào)試助手、串口工具均依賴人工輸入的方法來實(shí)現(xiàn)輸入,并人工將輸出結(jié)果與預(yù)期結(jié)果進(jìn)行比較,工作繁瑣且容易出錯(cuò),重復(fù)工作量大,數(shù)據(jù)輸入方式單一。IOTest接口測試工具軟件解決了上述難點(diǎn),可對嵌入式軟件進(jìn)行實(shí)時(shí)非侵入測試并支持插件式二次開發(fā),可滿足專業(yè)用戶的測試需求。

利用IOTest測試工具,測試人員可以完成:測試過程管理、仿真模型圖形化開發(fā)及代碼自動(dòng)生成、仿真模型代碼編譯、測試腳本輔助編輯、測試過程監(jiān)控、實(shí)時(shí)測試、測試數(shù)據(jù)收集定制、測試數(shù)據(jù)事后分析、日志管理及擴(kuò)展功能(可集成matlab)等方面的工作。IOTest具有通用性、靈活性、易用性等特點(diǎn),且在時(shí)間特性上可滿足工作周期不小于1ms的實(shí)時(shí)嵌入式軟件的系統(tǒng)測試要求。IOTest目前推薦使用的操作系統(tǒng)為Windows XP sp3。

3.1 IOTest基本功能

3.1.1 黑盒測試功能

黑盒測試是一種動(dòng)態(tài)測試,用于檢查模塊或各系統(tǒng)之間接口是否按照需求規(guī)范制定的方式運(yùn)行。IOTest通過檢查測試用例腳本運(yùn)行的結(jié)果與期望的輸出結(jié)果是否匹配來進(jìn)行測試。

3.1.2 回歸測試功能

回歸測試用于檢查通信協(xié)議的改動(dòng)是否引入了之前出現(xiàn)的錯(cuò)誤。IOTest通過自動(dòng)執(zhí)行先前的測試腳本進(jìn)行回歸測試。

3.2 工作原理

IOTest通過在測試前仿真被測系統(tǒng)的交聯(lián)設(shè)備的行為,由交聯(lián)環(huán)境圖自動(dòng)生成模型的框架代碼,在主機(jī)上完成代碼的編譯鏈接,得到目標(biāo)機(jī)上能運(yùn)行的可執(zhí)行文件,根據(jù)不同的測試要求生成對應(yīng)的測試用例,完成模型的初始化、任務(wù)調(diào)度,以及模型變量的收發(fā)工作。用戶通過編寫測試腳本描述用戶測試意圖,腳本是具有正規(guī)語法的數(shù)據(jù)和指令的集合,解釋器通過腳本文本來實(shí)現(xiàn)相應(yīng)功能。測試啟動(dòng)后,由實(shí)時(shí)調(diào)度程序驅(qū)動(dòng)腳本解釋器,將測試腳本翻譯為測試動(dòng)作,再分發(fā)至各仿真模型。同時(shí),解釋器、仿真模型與被測軟件之間通過交互對測試反饋進(jìn)行處理,完成最終的測試任務(wù)。

測試過程中通過“周期任務(wù)”“異步任務(wù)”(事件驅(qū)動(dòng)型任務(wù))來驅(qū)動(dòng)模型和測試腳本之間的數(shù)據(jù)收發(fā),并對測試過程進(jìn)行監(jiān)控,在接受任務(wù)過程中,系統(tǒng)會(huì)對接受數(shù)據(jù)的校驗(yàn)元素進(jìn)行檢查,若傳輸過程中出現(xiàn)錯(cuò)誤,則系統(tǒng)會(huì)發(fā)出警告。

測試結(jié)束后,IOTest會(huì)通過TDA(測試結(jié)果分析工具)對測試結(jié)果進(jìn)行分析:啟動(dòng)MySQL服務(wù)器,TDA 2.0通過讀取自動(dòng)保存在數(shù)據(jù)庫中的測試結(jié)果,并在工程管理區(qū)和分析管理區(qū)以樹形結(jié)構(gòu)顯示當(dāng)前要分析的結(jié)果文件(包括列表、曲線、腳本),主框架的日志區(qū)顯示當(dāng)前工程測試結(jié)果的詳細(xì)日志信息。工作原理如圖1所示。

3.3 應(yīng)用實(shí)例

3.3.1 對被測軟件進(jìn)行建模

圖1 IOTest工作原理

IOTest提供多種連接總線:Local、RS422、RS232、MIL-STD-1553B、ARINC429、CAN、以太網(wǎng)繼電器等。本文以連接RS232總線的串口通信為例,對照RS232(PCI—1620)管腳圖,將被測計(jì)算機(jī)端口與IOTest管腳接口連接,設(shè)計(jì)RS232串口通信的交聯(lián)環(huán)境圖(安裝串口調(diào)試助手的測試機(jī)為被測設(shè)備),端口號為6,波特率115200bps,其中發(fā)送數(shù)據(jù)位數(shù)6,奇偶校驗(yàn),停止位數(shù)1;接收端設(shè)備modol_1,數(shù)據(jù)位數(shù)8。對被測軟件進(jìn)行建模,如圖2所示。

每個(gè)仿真模型都由一個(gè)“.c”“.h”和文件組成,如實(shí)例中組成模型JIAHONG的代碼文件有JIAHONG.h與JIAHOGN.c文件,位置存于測試工程下“模型代碼 ode_1”中,結(jié)構(gòu)體如圖3所示。

模型結(jié)構(gòu)體繼承BaseModel,具有BaseModel的“模型初始化”“模型結(jié)束”“接收ISR數(shù)據(jù)”等方法,且方法以函數(shù)指針的形式存在,在模型的“.c”文件中給出這3個(gè)函數(shù)指針制定具體的函數(shù)實(shí)現(xiàn)。其中ISR任務(wù)調(diào)度函數(shù)如圖4所示。

從圖4中可以看出,當(dāng)SemIsrnode為可用時(shí),表明有數(shù)據(jù)到來,然后根據(jù)數(shù)組變量“g_models”依次調(diào)用所有的ReceiveIsrData函數(shù)進(jìn)行處理,實(shí)現(xiàn)以中斷的方式接受串口數(shù)據(jù),如RS422、RS232等。

3.3.2 對判斷結(jié)構(gòu)進(jìn)行顯示

將模塊之間的通信格式按照協(xié)議進(jìn)行模塊之間通信的編輯,分別將輸入輸出定義為Send和Receive,數(shù)據(jù)為“UChar”類型。

將數(shù)據(jù)顯示與數(shù)據(jù)進(jìn)行關(guān)聯(lián),由工程顯示面板中的樹形圖接收。為直觀比對測試結(jié)果,在面板中增加信號指示燈標(biāo)識,如果接收幀頭為“0X41”,則指示燈為綠色,反之則為紅色。

3.3.3 根據(jù)實(shí)際需求編寫測試腳本

在軟件添加對應(yīng)顯示、模型、收集方案后,可根據(jù)實(shí)際測試需求對發(fā)送端數(shù)據(jù)進(jìn)行控制。根據(jù)常見的測試要求,IOTest端發(fā)送變量Send,數(shù)據(jù)格式為“D1 F1 02 00 03 21”,第六位0x21為前5位數(shù)據(jù)的異或和。發(fā)送時(shí)要求第三位數(shù)據(jù)進(jìn)行自加并自動(dòng)計(jì)算前5位校驗(yàn)和,發(fā)送時(shí)間為10s,間隔時(shí)間1s。Task1 腳本如圖5所示。

圖2 系統(tǒng)交聯(lián)環(huán)境圖

圖3 模型JIAHONG的結(jié)構(gòu)體

圖4 ISR任務(wù)調(diào)度函數(shù)

圖5 Task1腳本

設(shè)置任務(wù)周期為1000ms,結(jié)束時(shí)間為10000ms。Task2腳本如圖6所示。

圖6 Task2腳本

模型周期任務(wù)的函數(shù)入口為“void JIAHONG_period_Task(JIAHONG*pMdl) ”,該任務(wù)進(jìn)行周期變量的發(fā)送與接收。由測試界面的“測試開始”按鈕進(jìn)行觸發(fā),使結(jié)構(gòu)體中“信號量”sem_Perd周期性釋放,每次運(yùn)行周期任務(wù)模型計(jì)數(shù)器timercounter增加相應(yīng)數(shù)值。模型周期任務(wù)代碼如圖7所示。

3.4 結(jié)果顯示

待腳本、顯示、收集方案編輯好后將其關(guān)聯(lián)至同一被測單元中,將整個(gè)工程進(jìn)行編譯、下載及測試初始化。被測軟件端向端口6發(fā)送錯(cuò)誤數(shù)據(jù)幀。結(jié)果如圖8所示。

4 結(jié)束語

從全文的分析中我們可以看到,IOTest已可以充分滿足常規(guī)配置項(xiàng)之間的接口測試需求,在整個(gè)軟件系統(tǒng)未完整實(shí)現(xiàn)的情況下,也能有效地捕捉各分系統(tǒng)軟件中存在的功能缺陷,縮短測試周期并提高開發(fā)效率。

圖7 模型周期任務(wù)代碼

圖8 測試結(jié)果顯示

猜你喜歡
模型
一半模型
一種去中心化的域名服務(wù)本地化模型
適用于BDS-3 PPP的隨機(jī)模型
提煉模型 突破難點(diǎn)
函數(shù)模型及應(yīng)用
p150Glued在帕金森病模型中的表達(dá)及分布
函數(shù)模型及應(yīng)用
重要模型『一線三等角』
重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
3D打印中的模型分割與打包
主站蜘蛛池模板: 国产精品女人呻吟在线观看| 一本一道波多野结衣av黑人在线| 国产视频欧美| 91麻豆国产在线| 成人在线不卡视频| 亚洲精品中文字幕无乱码| 人妻中文字幕无码久久一区| 国产呦视频免费视频在线观看| 欧美一区二区人人喊爽| 国产一区二区网站| 欧美视频在线第一页| 激情五月婷婷综合网| 亚洲日韩精品综合在线一区二区| 国产精品视频免费网站| 国产精品久久久久久久伊一| 欧美精品xx| 亚洲综合二区| 国产熟女一级毛片| 亚洲av无码成人专区| 国产乱子伦无码精品小说| 亚洲精品成人片在线观看| 亚洲精品你懂的| 午夜性爽视频男人的天堂| 亚洲综合婷婷激情| 国产剧情一区二区| 亚洲精品国产成人7777| 国产9191精品免费观看| 国产靠逼视频| 亚洲精品第1页| 中文字幕久久亚洲一区| a级高清毛片| 尤物精品国产福利网站| 国产午夜精品一区二区三区软件| 欧洲欧美人成免费全部视频| 亚洲人成网站观看在线观看| 免费A级毛片无码无遮挡| 99视频精品在线观看| 99久久国产综合精品女同| 色综合久久久久8天国| 亚洲综合欧美在线一区在线播放| 久久99精品久久久久久不卡| 看你懂的巨臀中文字幕一区二区| 就去吻亚洲精品国产欧美| 视频一本大道香蕉久在线播放| 思思热在线视频精品| 亚洲AⅤ永久无码精品毛片| 日韩少妇激情一区二区| 极品国产在线| 日韩精品免费一线在线观看 | 日韩国产综合精选| 国产精品自拍合集| 亚洲av无码专区久久蜜芽| 国产亚洲精品97AA片在线播放| 精品91在线| 亚洲男人的天堂久久精品| 国产美女主播一级成人毛片| 欧美性天天| 女人18毛片一级毛片在线 | 午夜国产小视频| 日本国产精品| 欧美不卡视频在线| av一区二区无码在线| 人妻无码一区二区视频| 狠狠躁天天躁夜夜躁婷婷| 欧美午夜在线播放| 国内精品视频在线| 欧美日韩另类在线| 中文字幕日韩丝袜一区| 蜜臀AV在线播放| 自慰网址在线观看| 青青操国产视频| 亚洲天堂成人在线观看| 精品国产福利在线| 国产激爽爽爽大片在线观看| 国产精品不卡片视频免费观看| 日韩在线网址| 中文字幕首页系列人妻| 日韩黄色精品| 成人一级黄色毛片| 国产亚洲欧美在线中文bt天堂| 国产成人综合日韩精品无码不卡| 亚洲一区二区视频在线观看|