當(dāng)前位置:首頁(yè) > 測(cè)試測(cè)量 > 測(cè)試測(cè)量
[導(dǎo)讀]隨著軟硬件協(xié)同應(yīng)用復(fù)雜性日益增加,其中軟件必須通過(guò)全面的測(cè)試才可以保證質(zhì)量和可靠性。但由于研發(fā)時(shí)間的限制,軟件測(cè)試需要選擇合適的方法,同時(shí)選擇合適的測(cè)試工具,以便達(dá)到足夠的測(cè)試效率。在一個(gè)基于FPGA的軟硬

隨著軟硬件協(xié)同應(yīng)用復(fù)雜性日益增加,其中軟件必須通過(guò)全面的測(cè)試才可以保證質(zhì)量和可靠性。但由于研發(fā)時(shí)間的限制,軟件測(cè)試需要選擇合適的方法,同時(shí)選擇合適的測(cè)試工具,以便達(dá)到足夠的測(cè)試效率。在一個(gè)基于FPGA的軟硬件協(xié)同應(yīng)用中,本文從占用資源、運(yùn)行速度等方面比較了Rational Visual Test和QuickTest Professional兩大自動(dòng)化測(cè)試工具,得出前者有較好的速度和可用性。

  前言

  軟件測(cè)試是程序的一種執(zhí)行過(guò)程,目的是盡可能發(fā)現(xiàn)并改正被測(cè)試軟件中的錯(cuò)誤, 提高軟件的可靠性,它是軟件生命周期中一項(xiàng)非常重要的非常復(fù)雜的工作。在目前的情況下對(duì)軟件可靠性保證具有極其重要意義的,仍然是軟件測(cè)試。但如何進(jìn)行測(cè)試,如何提高測(cè)試的質(zhì)量和效率,從而確保軟件產(chǎn)品的質(zhì)量和可靠性,仍是令人深感困惑的問(wèn)題。本文根據(jù)筆者的一些粗淺的體會(huì),簡(jiǎn)要介紹軟件測(cè)試的基本過(guò)程,以及一些常用的技術(shù)手段、測(cè)試策略和準(zhǔn)則,并介紹一個(gè)在工作中用到的Rational(現(xiàn)已被IBM收購(gòu))自動(dòng)化軟件測(cè)試工具Visual Test。

  運(yùn)用這種自動(dòng)化測(cè)試工具可以省去很多手工運(yùn)行的麻煩,而且準(zhǔn)確獲得測(cè)試數(shù)據(jù)和結(jié)果。通過(guò)本文介紹,以期使愈來(lái)愈多的人在認(rèn)識(shí)到軟件測(cè)試重要性的同時(shí),能夠更進(jìn)一步了解應(yīng)如何正確地選擇和有效地運(yùn)用各種各樣的測(cè)試方法、技術(shù)以及自動(dòng)化測(cè)試工具提高軟件的質(zhì)量和可靠性。


  軟件測(cè)試的基本過(guò)程

  軟件測(cè)試是一個(gè)極為復(fù)雜的過(guò)程。一個(gè)規(guī)范化的軟件測(cè)試過(guò)程通常須包括以下基本的測(cè)試活動(dòng) :①擬定軟件測(cè)試計(jì)劃 ;②編制軟件測(cè)試大綱 ;③設(shè)計(jì)和生成測(cè)試用例 ;④實(shí)施測(cè)試 ;⑤生成軟件問(wèn)題報(bào)告。

  實(shí)際上,軟件測(cè)試過(guò)程與整個(gè)軟件開(kāi)發(fā)過(guò)程基本上是平行進(jìn)行的。測(cè)試計(jì)劃早在需求分析階段即應(yīng)開(kāi)始制定,其他相關(guān)工作,包括測(cè)試大綱的制定、測(cè)試數(shù)據(jù)的生成、測(cè)試工具的選擇和開(kāi)發(fā)等也應(yīng)在測(cè)試階段之前進(jìn)行。充分的準(zhǔn)備工作可以有效地克服測(cè)試的盲目性,縮短測(cè)試周期,提高測(cè)試效率,并且起到測(cè)試文檔與開(kāi)發(fā)文檔互查的作用。

  此外,軟件測(cè)試在每個(gè)測(cè)試周期中,測(cè)試工程師將依據(jù)預(yù)先編制好的測(cè)試大綱和準(zhǔn)備好的測(cè)試用例,對(duì)被測(cè)軟件進(jìn)行完整的測(cè)試。測(cè)試與糾錯(cuò)通常是反復(fù)交替進(jìn)行的。


  軟件測(cè)試工具

  軟件測(cè)試的目的是用盡可能少的時(shí)間和人力發(fā)現(xiàn)并改正軟件中潛在的各種故障及缺陷,并能以更快的速度和更低的成本開(kāi)發(fā)出高質(zhì)量的應(yīng)用程序,這就使測(cè)試人員的工作比以往任何時(shí)候都更加困難。在很多項(xiàng)目中,測(cè)試人員的所有任務(wù)大多是由手動(dòng)處理的,而實(shí)際上有很大一部分重復(fù)性強(qiáng)的測(cè)試工作是可以獨(dú)立開(kāi)來(lái),自動(dòng)實(shí)現(xiàn)的。在大型項(xiàng)目中測(cè)試團(tuán)隊(duì)和其他團(tuán)隊(duì)之間沒(méi)有足夠的合作,無(wú)法促進(jìn)彼此的交流。實(shí)施測(cè)試自動(dòng)化可以提高測(cè)試工作效率,使用工具的目的只是為了減少部分手工測(cè)試,將更多人力資源投入到更有價(jià)值的工作中。

  一些受軟件開(kāi)發(fā)人員歡迎的軟件測(cè)試工具為軟件測(cè)試提供了強(qiáng)有力的支持。本文將介紹美國(guó)Rational 公司(現(xiàn)已被IBM收購(gòu))的著名套裝軟件Rational Visual Test。它的一個(gè)重要特點(diǎn)是可以自動(dòng)驅(qū)動(dòng)被測(cè)程序的運(yùn)行。并且可以自動(dòng)記錄和重放程序執(zhí)行過(guò)程,從而實(shí)現(xiàn)了對(duì)測(cè)試進(jìn)行“復(fù)查”的自動(dòng)化。由于測(cè)試是一個(gè)需要反復(fù)進(jìn)行的過(guò)程,常常要數(shù)十次甚至數(shù)百次地重復(fù)。因此,這一特性大大地提高了軟件“再測(cè)試”(Re-Test)和“回歸測(cè)試”(Regression)的自動(dòng)化程度,把測(cè)試人員從繁雜的、重復(fù)性的手工測(cè)試中解脫出來(lái),從而顯著地提高軟件測(cè)試效率。除了這個(gè)最基本的自動(dòng)錄放功能外,它還提供了一系列的輔助支持功能,比如被錄制的程序執(zhí)行過(guò)程可以被自動(dòng)轉(zhuǎn)換成具有良好可讀性的高級(jí)語(yǔ)言程序,從而使這個(gè)測(cè)試驅(qū)動(dòng)程序可以由測(cè)試人員根據(jù)測(cè)試需要進(jìn)行必要的修改,甚至完全用手工方式編制。自動(dòng)記錄和分析比較測(cè)試的執(zhí)行結(jié)果。


  測(cè)試實(shí)例介紹

  接下來(lái)以實(shí)際工作中的一個(gè)測(cè)試項(xiàng)目為例,結(jié)合Visual Test這個(gè)自動(dòng)測(cè)試工具對(duì)所要測(cè)試的內(nèi)容進(jìn)行介紹。為了方便介紹,下文都以VT作為Visual Test的簡(jiǎn)稱,QT作為工具QuickTest Professional的簡(jiǎn)稱。

  Visual Test的軟件界面,與Visual Stadio相似,所以很容易上手,左面是建立的項(xiàng)目名,右面是代碼,最下面是信息輸出窗口。

  接下來(lái)介紹所要測(cè)試的軟件ispLEVER,它是Lattice公司的CPLD/FPGA集成設(shè)計(jì)工具?,F(xiàn)在所要測(cè)試的就是在ispLEVER環(huán)境下運(yùn)行一批FPGA器件的設(shè)計(jì)例子,產(chǎn)生最后的下載文件(.bit或者.jed),并提取一些例如最大頻率,所用資源等參數(shù),將這些參數(shù)與之前版本運(yùn)行后的結(jié)果相比較,這樣就能分析出當(dāng)前所測(cè)試軟件版本的優(yōu)劣之處。

  運(yùn)行Rational Visual test測(cè)試主要分為兩步,先運(yùn)行所有的設(shè)計(jì)的case,然后提取參數(shù)。

 運(yùn)行所有case

  首先讀取runlist文件,runlist是一個(gè)包括了所有運(yùn)行例子的文件名的文件,每一行對(duì)應(yīng)一個(gè)例子的文件名,程序逐行讀入,參考圖1示的代碼。

  接下來(lái)整個(gè)代碼運(yùn)行的流程可以表示為:最小化VT窗口->在桌面上找到ispLEVER的圖標(biāo)并運(yùn)行->進(jìn)入工作目錄->處理一些彈出的窗口信息->打開(kāi)需要運(yùn)行的例子->清除項(xiàng)目以前運(yùn)行的信息 ->保存項(xiàng)目->運(yùn)行布線->保存當(dāng)前的項(xiàng)目->把運(yùn)行完的例子復(fù)制到統(tǒng)一的備份目錄中->關(guān)閉當(dāng)前運(yùn)行的項(xiàng)目 ->運(yùn)行下一個(gè)例子 ……,直至運(yùn)行完所有的測(cè)試?yán)印?/p>

  以上所有的菜單和窗口操作都是由VT執(zhí)行代碼完成操作。接著測(cè)試工具將會(huì)按照代碼包含的子程序運(yùn)行。

  圖2所示的打開(kāi)項(xiàng)目程序所進(jìn)行的操作依次為,選中ispLEVER為當(dāng)前窗口,定義窗口的尺寸,打開(kāi)File下拉菜單的第二行命令,也就是open project命令,接著用play命令輸入工作目錄和項(xiàng)目名,接著點(diǎn)擊open來(lái)打開(kāi)項(xiàng)目。

  此外VT中還有例如點(diǎn)擊窗口中的關(guān)鍵字操作,在當(dāng)前窗口中尋找關(guān)鍵字,坐標(biāo)定位等指令,靈活運(yùn)用這些命令極大的豐富了VT自動(dòng)化測(cè)試的內(nèi)容。

  運(yùn)行完所有的例子后,所要進(jìn)行的就是提取所需的各種參數(shù),也就是重要的測(cè)試數(shù)據(jù)。

  運(yùn)行完的例子都會(huì)備份在一個(gè)統(tǒng)一的目錄中,現(xiàn)在VT所要做的就是在這些對(duì)應(yīng)的目錄中找到.log和.twr文件,這兩個(gè)文件是最后運(yùn)行完case的輸出信息文件,里面包含了測(cè)試所要提取的一些參數(shù)信息。

  圖3是在.log文件中的一段信息,紅圈指示的內(nèi)容是需要提取的信息之一,log文件是運(yùn)行完后軟件所生成的日志,里面包括了布線完后的一些資源信息,在這里VT所要做的提取的是PIOs信息,也就是輸入輸出端口數(shù)量的信息,可以用下面的代碼實(shí)現(xiàn)。  

  圖4實(shí)現(xiàn)的是把log文件中逐行輸入到tempstring中,在這些輸入的信息中找到所需信息并處理,則需要在VT中用以下代碼實(shí)現(xiàn)。

  圖5實(shí)現(xiàn)的是在字符串tempstring中尋找關(guān)鍵字"Number of external PIOs:”,也就是I/O口端口數(shù)量信息的那行。如果找到的話,用LTRIM$實(shí)現(xiàn)從這行第29個(gè)字符開(kāi)始的內(nèi)容放入tempstring2中。由于所要的有用信息只包括”out of”之前的數(shù)字,所以還需要用LEFT$來(lái)提取左面的信息,也就是158,這就是使用的I/O端口數(shù)量的信息,最后再用TRIM$ 去掉空格即可得到。

  類似的可以在特定的時(shí)序文件中得到最大頻率,所用綜合工具,器件封裝,所用到的資源等等信息,把這些參數(shù)信息提取出來(lái)與之前版本的ispLEVE軟件所運(yùn)行得出的結(jié)果相比較,得出測(cè)試的結(jié)果。

  從上可看出,對(duì)于測(cè)試所要運(yùn)行的例子比較多,如果采用手工的話,工作量相當(dāng)大,而且極不精確,容易出錯(cuò)?,F(xiàn)在采用自動(dòng)化測(cè)試工具將簡(jiǎn)化測(cè)試的繁瑣程度,所有操作由自動(dòng)化測(cè)試工具完成,而且代碼可以移植,只要稍微改動(dòng)幾個(gè)參數(shù),代碼適用于每個(gè)版本的測(cè)試,給測(cè)試工作帶來(lái)極大方便與準(zhǔn)確性。


  自動(dòng)化測(cè)試工具的比較

  目前同類的主流自動(dòng)化測(cè)試軟件還有Mucury公司的QuickTest Professional。

  它也是一款測(cè)試自動(dòng)化軟件,與Visual Test有類似之處,都是用于創(chuàng)建功能和回歸測(cè)試,能自動(dòng)捕獲、驗(yàn)證和重放用戶的交互行為。QuickTest Professional的特點(diǎn)是易于操作,可以通過(guò)軟件中所集成的錄制能力來(lái)捕獲測(cè)試步驟,產(chǎn)品用簡(jiǎn)單的英語(yǔ)以文檔形式記錄每個(gè)步驟,并通過(guò)活動(dòng)屏幕將文檔與一個(gè)集成截屏相結(jié)合。傳統(tǒng)的腳本記錄工具所生產(chǎn)的腳本不易修改,不同的是,在QuickTest中的關(guān)鍵詞驅(qū)動(dòng)方式能便捷地插入、修改數(shù)據(jù)驅(qū)動(dòng)和移除測(cè)試步驟,靈活性較強(qiáng)。

  下面的數(shù)據(jù)表格是在PC上運(yùn)行VT和QT這兩個(gè)工具,分別關(guān)于內(nèi)存占用以及打開(kāi)ispLEVER工具的時(shí)間,兩者對(duì)比之下的結(jié)果。其中Open project ,F(xiàn)it Design是指打開(kāi)設(shè)計(jì)和最后生成下載文件,Simulation是仿真,Design Planner、EPIC、IPexpress、ispVM、Power Calculator等都是ispLEVER開(kāi)發(fā)環(huán)境下的工具,主要用于底層的交互式編輯,調(diào)用ip以及下載程序,分析功率等功能(表1,表2)。

  根據(jù)上面兩個(gè)對(duì)比結(jié)果,從內(nèi)存占用情況來(lái)看VT占用的資源要遠(yuǎn)小于QT;從打開(kāi)工具所用時(shí)間來(lái)看,VT打開(kāi)絕大多數(shù)ispLEVER的工具的時(shí)間也要小于QT。雖然QT具有較強(qiáng)的錄制修改腳本的特點(diǎn),但從實(shí)際應(yīng)用來(lái)看,運(yùn)行的速度和占用資源對(duì)于軟件測(cè)試更為重要,所以自動(dòng)測(cè)試工具VT要優(yōu)于QT。


  結(jié)論

隨著軟硬件協(xié)同應(yīng)用復(fù)雜性日益增加,軟件測(cè)試工作越來(lái)越受到重視。 隨著軟件技術(shù)的發(fā)展,程序的規(guī)模逐漸增大,復(fù)雜度也逐漸增加,使用軟件測(cè)試工具可以增強(qiáng)軟件測(cè)試的自動(dòng)化程度。在兩個(gè)主流軟件的比較中,Visual Test相對(duì)較高的效率和速度在軟硬件設(shè)計(jì)的實(shí)際應(yīng)用中得到驗(yàn)證,有助于軟件開(kāi)發(fā)和測(cè)試人員進(jìn)一步提高測(cè)試效率和軟件的質(zhì)量。這可以反映出在軟硬件設(shè)計(jì)的過(guò)程中,工具的選擇必須用實(shí)際應(yīng)用來(lái)作選擇,來(lái)保障整體的開(kāi)發(fā)效率的提高。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉