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

基于嵌入式開發的白盒測試插樁技術研究

2017-07-25 07:24:27蘭婭勛陸璐
現代電子技術 2017年14期

蘭婭勛+陸璐

摘 要: 以往的白盒測試插樁方法普遍不能精準定位到目標插樁,語句覆蓋率不符合要求。為了解決這個現象,提出一種基于嵌入式開發的白盒測試插樁方法。所提方法先對嵌入式開發的插樁技術原理進行介紹,提出使用在線嵌入式測試軟件CodeTEST進行自動插樁的理念。設計基于嵌入式開發的白盒測試插樁進程,分程序標準化、插樁順序劃分和覆蓋率分析三步進行。并介紹插樁順序塊劃分方法、插樁方位提取規則以及插樁信息分析方法。實驗結果表明,所提方法擁有很高的語義覆蓋率和分支覆蓋率。

關鍵詞: 嵌入式技術; 白盒測試; 插樁技術; CodeTEST

中圖分類號: TN806?34; TP311 文獻標識碼: A 文章編號: 1004?373X(2017)14?0049?03

Abstract: The previous white box testing plugging pile method does not precisely position to the target pile, and its statement coverage rate does not meet the requirements. In order to eliminate this phenomenon, a kind of white?box testing plugging pile method based on embedded development is put forward in this paper. The principle of the pile technology based on the embedded development is introduced. A concept that uses the online embedded testing software CodeTEST the to implement the automatic plugging pile is put forward. The progress of white?box testing plugging pile based on embedded development is designed and divided into three steps of program standardization, inserted sequence division and coverage rate analysis. The plugging pile block partition method, plugging pile orientation extraction rules and plugging pile information analysis method are introduced. The experimental results show that the proposed method has high semantic coverage rate and branch coverage rate.

Keywords: embedded technology; white box testing; insert pile technology; CodeTEST

0 引 言

嵌入式技術的應用價值越來越大,目前已經成為熱點研究話題。就現階段而言,嵌入式開發在軟件測試中的應用往往過于重視軟件調試,隨著用戶對軟件質量要求的不斷攀升,軟件測試明顯已經不能只做表面功夫,需要更深層次的調試支持。

白盒測試是軟件測試人員常用的測試方法,以白盒測試為例,以往進行的嵌入式開發代碼插樁普遍無法得到結構相對完整的語義信息,語句覆蓋率不符合要求。造成這種情況的原因是在嵌入式開發的初期,插樁技術不能自動完成語義覆蓋[1],此時一旦涉及到目標測試環境的交互開發,白盒測試就不能精準定位到目標插樁。對此,提供一種新的基于嵌入式開發的白盒測試插樁方法,對以往方法覆蓋率低的缺點進行改善,達到提高白盒測試精度的需求。

1 嵌入式開發的插樁技術原理

嵌入式開發將通過動、靜態相融合的測試方法取得插樁定位信息,使用在線嵌入式測試軟件CodeTEST進行自動插樁[2]。CodeTEST具有在線追蹤和展示能力,幾乎支持所有嵌入式開發設備軟硬件平臺。CodeTEST在插樁過程中不用變更原軟件程序代碼,軟件測試人員只需敲定需要進行代碼插樁的范圍即可。

圖1為CodeTEST的軟件測試插樁進程,將根據工具鏈的多元組合達成嵌入式插樁。軟件源代碼在中央控制器的開發環境中通過編譯器套件帶動Makefile文件進行預處理。預處理文件的代碼間隔變寬,更容易向其中插入探測針。同時,預處理過程也會間接修正錯誤的軟件程序代碼。插樁器在預處理文件中插入探測針,探測針攜帶定位標簽,測試人員能夠通過跟蹤定位標簽查看軟件測試進程。由于CodeTEST不能直接將編譯代碼寫入定位點,因此利用編譯器套件將插樁文件匯編并引入編譯器,通過構建編譯程序和鏈接程序自動生成可執行代碼,以便對源代碼文件進行插樁。

2 基于嵌入式開發的白盒測試插樁方法

本文提出的基于嵌入式開發的白盒測試插樁方法先排列好軟件程序插樁順序,再依次進行插樁,對插樁信息進行分析最后達成白盒測試。

2.1 基于嵌入式開發的白盒測試插樁進程

目前,軟件程序使用的編譯語言主要是C語言,考慮到白盒測試的特殊性,所提出的基于嵌入式開發的白盒測試插樁方法設計了如圖2所示的基于嵌入式開發的白盒測試插樁進程。軟件程序的預處理進程采用CodeTEST的嵌入式處理方式,先后進行程序標準化以及插樁順序的劃分。插樁進程分為語句覆蓋插樁和分支覆蓋插樁。對標準化程序進行插樁和編譯后,得到可執行代碼和插樁信息,進而計算出白盒測試的覆蓋率信息[3]。

2.2 順序塊劃分

在白盒測試中獲取良好的插樁方位是提高覆蓋率的有效方式。插樁順序作為提供插樁方位的前提條件,其原理是在插樁順序中對順序塊進行劃分。順序塊是指單純的軟件程序處理代碼,其中不含有循環語句、外部鏈接以及外部函數,程序的運行是一步到位且不重復,只存在一個入口和一個出口[4],在保證探測針數量最少的情況下,插樁方位也只存在于程序的首端或者尾端,可有效縮短插樁時間,避免語句重復覆蓋,減少了白盒測試對源代碼的干擾。除以上描述之外,順序塊中也不會含有不可執行代碼,這是由嵌入式開發設備內存小的特性決定的[5]。首端代碼的宏、聲明、定義以及以上代碼所占據的行列和標點都歸屬于不可執行代碼的范疇。

對插樁方位進行提取需要應用到四種規則,如表1所示。

2.3 插樁信息分析

白盒測試中插樁信息與靜態數據庫進行靜態連接,以交互模擬語言提取探測針得到軟件程序代碼特征,進一步生成可執行代碼。樁函數負責將插樁信息傳送給CodeTEST進行分析,由CodeTEST計算白盒測試覆蓋率。使用樁函數還原原有軟件程序,返還白盒測試驅動指令[6],使用順序塊驅動樁函數。在白盒測試中,用表示CodeTEST得到的插樁信息,表示CodeTEST對插樁信息的分析順序,語句覆蓋率表示為式(1),分支覆蓋率表示為式(2),如下: (1)

式中:是進行白盒測試軟件程序的序列,共有個程序;,表示插樁信息中的語句總量和已處理的分支數量;,是僅處理過一個的語句、分支數量;是可執行代碼鏈。

3 實驗結果與分析

本次實驗的實驗地點為某大學的計算機實驗室,計算機系統為Windows XP,運存2.21 GHz,內存4 GB。在計算機上使用虛擬機搭建出一個軟件測試環境,數據庫使用SqlServer(阿里混合云),Web應用服務器使用Apache。實驗將針對工程設計軟件、在線游戲軟件和數據恢復軟件進行白盒測試插樁,實時跟蹤插樁信息,取整體平均的語句覆蓋率與分支覆蓋率數據進行對比分析。實驗結果如表2所示。

由表2可知,本次實驗選用本文提出的基于嵌入式開發的白盒測試插樁方法與基于路徑覆蓋的白盒測試插樁方法、基于ElcEmma的白盒測試插樁方法進行對比。在所搭建的實驗平臺中,三種方法均能正常取得語句覆蓋率與分支覆蓋率數據。其中,基于路徑覆蓋的白盒測試插樁方法在測試在線游戲軟件時取得的效果最好;基于ElcEmma的白盒測試插樁方法的覆蓋率偏小,未發揮很大作用;語句覆蓋率與分支覆蓋率最高的是本文方法,能夠很好地對各類軟件進行白盒測試插樁。

4 結 論

本文提出一種基于嵌入式開發的白盒測試插樁方法,用CodeTEST整體掌控白盒測試插樁進程,分析白盒測試覆蓋率,有效改善了以往插樁技術智能化不足的問題,使其能自動完成語義覆蓋。通過實驗的證明,本文所提方法取得了很高的語義覆蓋率和分支覆蓋率,達成了提高白盒測試精度的用戶需求。

參考文獻

[1] 徐晴,紀峰,田正其,等.基于E2PROM數據讀寫的智能電能表白盒測試方法[J].電測與儀表,2014,51(3):1?5.

[2] 姚佳瑜.箭載飛控軟件系統最差情況執行時間測試研究[J].電腦知識與技術:學術交流,2016,12(3):87?89.

[3] 井靖,蔣烈輝,李軼民,等.基于平臺透明化處理的動態信息提取方法[J].計算機應用研究,2015,32(10):3009?3013.

[4] 陳佳麗,陳曉潔.基于ElcEmma工具的代碼覆蓋軟件測試技術研究[J].宜春學院學報,2016,38(6):45?48.

[5] 陳佳麗,陳曉潔.靜態代碼分析在軟件測試中的應用研究[J].嘉應學院學報,2016,34(2):35?39.

[6] 王穎,谷利澤,楊義先,等.EWFT:基于程序執行過程的白盒測試工具[J].電子學報,2014,42(10):2016?2023.

主站蜘蛛池模板: 日韩性网站| 亚洲午夜综合网| 欧美日韩精品一区二区在线线| 日韩欧美色综合| 五月天综合婷婷| 无码精品国产dvd在线观看9久| 日韩在线成年视频人网站观看| 天堂在线www网亚洲| 色偷偷一区二区三区| 福利小视频在线播放| 午夜激情婷婷| 国内99精品激情视频精品| 免费看一级毛片波多结衣| 国产成人1024精品| 美女高潮全身流白浆福利区| 美女扒开下面流白浆在线试听 | 欧美日韩一区二区三| 日韩中文欧美| www.亚洲一区| 在线va视频| 国产成人AV大片大片在线播放 | 欧美日韩动态图| 精品丝袜美腿国产一区| 91综合色区亚洲熟妇p| 国产福利一区在线| 美女被操91视频| 国产精品久久久久无码网站| 亚洲精品在线观看91| 91精品aⅴ无码中文字字幕蜜桃 | 伊人91视频| 国产精品区网红主播在线观看| 欧美一区二区精品久久久| 无码丝袜人妻| 午夜国产小视频| 一区二区三区成人| 91美女视频在线| 欧美日韩福利| 亚洲精品视频免费| 亚洲一区二区黄色| 亚洲综合18p| 国产手机在线ΑⅤ片无码观看| 亚洲一区第一页| 国产精品微拍| 久久久久久久97| 亚洲精品午夜无码电影网| 亚洲日韩精品无码专区97| 在线欧美一区| 国产XXXX做受性欧美88| 国产精品久久久久久搜索| 最新国产在线| 国产麻豆精品手机在线观看| 日韩欧美中文字幕在线精品| 免费看a级毛片| 美女无遮挡被啪啪到高潮免费| 婷婷综合缴情亚洲五月伊| 五月婷婷丁香色| 91精品最新国内在线播放| 国产成人1024精品| 91区国产福利在线观看午夜 | 老司国产精品视频| 国产精品无码翘臀在线看纯欲| 国产H片无码不卡在线视频| 久久久久亚洲AV成人网站软件| 欧美日韩高清在线| 国产成人综合网在线观看| 极品私人尤物在线精品首页| 日韩精品成人网页视频在线| 国产最新无码专区在线| 日本亚洲国产一区二区三区| 欧美成人怡春院在线激情| 亚洲国产日韩欧美在线| 国产喷水视频| 日本色综合网| 亚洲免费成人网| 亚洲欧美日韩色图| 园内精品自拍视频在线播放| 国产精品一区不卡| 污视频日本| 亚洲中文字幕久久精品无码一区| 思思热在线视频精品| 无码视频国产精品一区二区| 国产精品网址在线观看你懂的|