亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網(wǎng)為廣大站長(zhǎng)提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.430618.com 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線(xiàn)咨詢(xún)客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

一、引言

隨著數(shù)字化時(shí)代的到來(lái),大量系統(tǒng)架構(gòu)復(fù)雜、功能日益強(qiáng)大的嵌入式系統(tǒng)正不斷進(jìn)入市場(chǎng),應(yīng)用也日趨復(fù)雜,這對(duì)嵌人式軟件的開(kāi)發(fā)技術(shù)和測(cè)試技術(shù)提出了更高的要求。嵌人式系統(tǒng)的復(fù)雜性和集成度越來(lái)越高,其中的軟件部分也開(kāi)始在整個(gè)嵌入式系統(tǒng)中占有越來(lái)越多的比例,并經(jīng)常實(shí)現(xiàn)硬件的功能。

嵌入式系統(tǒng)的專(zhuān)用程度較高,所以對(duì)其可靠性的要求也比較高,為了保證系統(tǒng)的穩(wěn)定性,避免由于其可能出現(xiàn)的失效而導(dǎo)致災(zāi)難性的后果,要求對(duì)嵌人式系統(tǒng),包括嵌入式軟件進(jìn)行嚴(yán)格的測(cè)試、確認(rèn)和驗(yàn)證。

基于嵌入式軟件自身的特點(diǎn),如實(shí)時(shí)性(Real-timing),內(nèi)存不豐富,I/O通道少,開(kāi)發(fā)工具昂貴,并且與硬件緊密相關(guān),CPU種類(lèi)繁多,其缺陷不像PC軟件的缺陷容易修補(bǔ)等等。傳統(tǒng)的軟件測(cè)試?yán)碚摬荒苤苯佑糜谇度胧杰浖y(cè)試,因此,研究嵌入式軟件的測(cè)試方法和策略,對(duì)于提高和改善嵌入式軟件的質(zhì)量有重要意義。

 

二、嵌入式軟件測(cè)試的基本方法

嵌入式系統(tǒng)是以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟件硬件可剪裁,適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積及功耗嚴(yán)格要求的專(zhuān)用計(jì)算機(jī)系統(tǒng)。嵌入式系統(tǒng)的軟硬件功能界限模糊,測(cè)試比PC系統(tǒng)軟件測(cè)試要困難得多,嵌入式軟件系統(tǒng)測(cè)試具有如下特點(diǎn):

(1)測(cè)試軟件功能依賴(lài)不需編碼的硬件功能,快速定位軟硬件錯(cuò)誤困難;

(2)強(qiáng)壯性測(cè)試、可知性測(cè)試很難編碼實(shí)現(xiàn);

(3)交叉測(cè)試平臺(tái)的測(cè)試用例、測(cè)試結(jié)果上載困難;

(4)基于消息系統(tǒng)測(cè)試的復(fù)雜性,包括線(xiàn)程、任務(wù)、子系統(tǒng)之間的交互,并發(fā)、容錯(cuò)和對(duì)時(shí)間的要求;

(5)性能測(cè)試、確定性能瓶頸困難;

(6)實(shí)施測(cè)試自動(dòng)化技術(shù)困難。

大量統(tǒng)計(jì)資料表明,軟件測(cè)試的工作量往往占軟件開(kāi)發(fā)總工作量的40%以上,在極端情況,測(cè)試那種關(guān)系人的生命安全的重要的行業(yè)中的嵌入式軟件所花費(fèi)的成本,可能相當(dāng)于軟件工程其他開(kāi)發(fā)步驟總成本的三倍到五倍。

在嵌入式軟件測(cè)試中,既要考慮軟件本身,還要考慮軟件同硬件平臺(tái)和操作系統(tǒng)的集成,同時(shí)還有條件苛刻的時(shí)間約束和實(shí)時(shí)要求,以及其他合性能相關(guān)的要求。

1、全數(shù)字模擬測(cè)試

全數(shù)字模擬測(cè)試是指采用數(shù)學(xué)平臺(tái)的方法,將嵌入式軟件從系統(tǒng)中剝離出來(lái),通過(guò)開(kāi)發(fā)CPU指令、常用芯片、I/O、中斷、時(shí)鐘等模擬器在開(kāi)發(fā)主機(jī)平臺(tái)(Host)上實(shí)現(xiàn)嵌入式軟件的測(cè)試。該方法操作簡(jiǎn)單,適用于功能測(cè)試,是一種可以借鑒的常規(guī)軟件測(cè)試方法。

但是全數(shù)字模擬測(cè)試有較大的局限性,使用不同語(yǔ)言編寫(xiě)的嵌入式軟件需要不同的仿真程序來(lái)執(zhí)行,通用性差,實(shí)時(shí)性與準(zhǔn)確性難以反映出嵌入式軟件的真實(shí)情況,當(dāng)并發(fā)事件要求一定的同步關(guān)系時(shí),維護(hù)統(tǒng)一、精確地系統(tǒng)時(shí)鐘,理順時(shí)序關(guān)系相當(dāng)困難。因此,設(shè)計(jì)一個(gè)能進(jìn)行系統(tǒng)測(cè)試的環(huán)境代價(jià)太大,全數(shù)字模擬測(cè)試只能作為嵌入式軟件測(cè)試的輔助手段。

2、交叉測(cè)試(Host/Target測(cè)試)

自從出現(xiàn)高級(jí)語(yǔ)言,嵌入式系統(tǒng)的開(kāi)發(fā)環(huán)境和運(yùn)行環(huán)境通常是存在差異的,開(kāi)發(fā)環(huán)境被認(rèn)為是主機(jī)平臺(tái)(Host),軟件運(yùn)行環(huán)境為目標(biāo)平臺(tái)(Target),相應(yīng)的測(cè)試為Host Target測(cè)試(交叉測(cè)試)。測(cè)試過(guò)程中,充分利用高級(jí)語(yǔ)言的可移植性,將系統(tǒng)中與目標(biāo)環(huán)境無(wú)關(guān)的部分工作轉(zhuǎn)移到PC平臺(tái)上完成,在硬件環(huán)境未建好或調(diào)試工具缺乏時(shí)就可以開(kāi)展,這時(shí)可以借鑒常規(guī)的軟件測(cè)試方法。

系統(tǒng)中與硬件密切相關(guān)的部分在Target上完成,用到的測(cè)試工具需要支持目標(biāo)環(huán)境。最后,在目標(biāo)環(huán)境中進(jìn)行驗(yàn)證確認(rèn)。交叉測(cè)試適用于高級(jí)語(yǔ)言,操作方便,測(cè)試成本較低,但是實(shí)時(shí)性受調(diào)試環(huán)境的制約,在目標(biāo)環(huán)境中測(cè)試時(shí)要占用一定的目標(biāo)資源。

3、嵌入式軟件測(cè)試方法分類(lèi)

嵌入式軟件測(cè)試或叫交叉測(cè)試(Cross-test),測(cè)試內(nèi)容包括:1.單元測(cè)試;2.集成測(cè)試;3.確認(rèn)測(cè)試;4.系統(tǒng)測(cè)試。

使用有效的交叉測(cè)試策略可極大地提高嵌入式軟件開(kāi)發(fā)測(cè)試的水平和效率,下文給出各個(gè)階段的嵌入式軟件測(cè)試方案。

靜態(tài)測(cè)試

靜態(tài)測(cè)試不利用計(jì)算機(jī)運(yùn)行被測(cè)程序,目的是度量程序靜態(tài)復(fù)雜度,檢查軟件是否符合編程標(biāo)準(zhǔn)。

1)靜態(tài)測(cè)試工具M(jìn)cCabeQA

McCabeQA是美國(guó)McCabe&Association公司的產(chǎn)品。它利用著名學(xué)者M(jìn)cCabe的軟件結(jié)構(gòu)化測(cè)試?yán)碚摚词褂肰(G)圈復(fù)雜度=模塊內(nèi)部獨(dú)立線(xiàn)性路徑數(shù)來(lái)度量軟件的復(fù)雜度。

McCabe最大的特點(diǎn)就是可視化,以獨(dú)特的圖形技術(shù)表示代碼。軟件通過(guò)分析源碼,得到整個(gè)軟件系統(tǒng)的結(jié)構(gòu)圖,同時(shí)得到了各種基于工業(yè)標(biāo)準(zhǔn)評(píng)估代碼復(fù)雜性,包括V(g)、EV(g)、DV(g)、Halstead等數(shù)十種靜態(tài)復(fù)雜度度量。

用不同的顏色表示軟件模塊的復(fù)雜性,測(cè)試人員的測(cè)試重點(diǎn)放在質(zhì)量差的模塊上;提供各種質(zhì)量模型深入評(píng)價(jià)軟件質(zhì)量,紀(jì)錄軟件質(zhì)量波動(dòng)曲線(xiàn)和版本變化趨勢(shì)分析,從而控制軟件修改不同階段的質(zhì)量。在單元級(jí)McCabe顯示模塊的流程圖,并且相對(duì)應(yīng)地標(biāo)出代碼的位置,視圖與代碼相互對(duì)應(yīng),可很快找出問(wèn)題所在。分析最終得到可定制的符合工業(yè)標(biāo)準(zhǔn)的綜合報(bào)告。

 

2)代碼規(guī)則檢查工具QAC/C++

QAC/QAC++是用于代碼規(guī)則檢查的自動(dòng)化工具。代碼審查主要檢查代碼和設(shè)計(jì)的一致性,代碼對(duì)標(biāo)準(zhǔn)的遵循、可讀性,代碼的邏輯表達(dá)的正確性,代碼結(jié)構(gòu)的合理性等方面。發(fā)現(xiàn)違背程序編寫(xiě)標(biāo)準(zhǔn)的問(wèn)題,程序中不安全、不明確和模糊的部分,找出程序中不可移植部分、違背程序編程風(fēng)格的問(wèn)題,包括變量檢查、命名和類(lèi)型審查、程序邏輯審查、程序語(yǔ)法檢查和程序結(jié)構(gòu)檢查等內(nèi)容。

4、動(dòng)態(tài)測(cè)試

動(dòng)態(tài)測(cè)試時(shí)軟件必須運(yùn)行。動(dòng)態(tài)測(cè)試方法分為黑盒法和白盒法。為了較快得到測(cè)試效果,通常先進(jìn)行功能測(cè)試,達(dá)到所有功能后,為確定軟件的可靠性進(jìn)行必要的覆蓋測(cè)試。

在軟件開(kāi)發(fā)的不同時(shí)期進(jìn)行動(dòng)態(tài)測(cè)試,測(cè)試又分為單元測(cè)試、集成測(cè)試、確認(rèn)測(cè)試、系統(tǒng)測(cè)試。

5、單元測(cè)試

單元測(cè)試方案之一采用IPL公司的Cantata++測(cè)試工具,它能夠滿(mǎn)足開(kāi)發(fā)者進(jìn)行高效的單元測(cè)試和集成測(cè)試要求,能夠提高測(cè)試效率,具有一整套包含測(cè)試、覆蓋率分析和靜態(tài)分析的功能。Cantata++含有以下幾個(gè)主要部分:

CTH測(cè)試功能庫(kù),Cantata++通過(guò)CTH提供的測(cè)試函數(shù)執(zhí)行測(cè)試,提供測(cè)試所需用例的輸入輸出,并檢查輸出結(jié)果是否符合要求,給出合格/不合格的確切結(jié)果。打樁、封裝和動(dòng)態(tài)分析的執(zhí)行也是利用CTH。

三、不把所有測(cè)試都放在目標(biāo)上

目前在嵌入式領(lǐng)域,目標(biāo)系統(tǒng)的應(yīng)用系統(tǒng)日趨復(fù)雜,而由于競(jìng)爭(zhēng)要求產(chǎn)品快速上市,開(kāi)發(fā)技術(shù)日新月異,同時(shí)硬件發(fā)展的日益穩(wěn)定,造成了軟件故障日益突出。由此,軟件的重要性越來(lái)越引起人們的重視,人們認(rèn)識(shí)到嵌入式系統(tǒng)的測(cè)試勢(shì)在必行。

由于嵌入式系統(tǒng)的自身特點(diǎn),如實(shí)時(shí)性、內(nèi)存不豐富、I/O通道少、開(kāi)發(fā)工具昂貴、并且與硬件緊密相關(guān),CPU種類(lèi)繁多等等。嵌入式軟件的開(kāi)發(fā)和測(cè)試也就與一般商用軟件的開(kāi)發(fā)和測(cè)試策略有了很大的不同,可以說(shuō)嵌入式軟件是最難測(cè)試的一種軟件。

嵌入式軟件測(cè)試使用有效的測(cè)試策略是唯一的出路,它可以使開(kāi)發(fā)的效率最大化,避免目標(biāo)系統(tǒng)的瓶頸。自從出現(xiàn)高級(jí)語(yǔ)言,開(kāi)發(fā)環(huán)境與最終運(yùn)行環(huán)境通常都是存在差異的,嵌入式系統(tǒng)更是如此。開(kāi)發(fā)環(huán)境被認(rèn)為是主機(jī)平臺(tái),軟件運(yùn)行環(huán)境為目標(biāo)平臺(tái)。相應(yīng)的測(cè)試為主機(jī)-目標(biāo)測(cè)試或交叉測(cè)試。

討論嵌入式軟件測(cè)試首先就會(huì)遇到一個(gè)問(wèn)題:為什么不把所有測(cè)試都放在目標(biāo)上進(jìn)行呢?因?yàn)槿羲袦y(cè)試都放在目標(biāo)平臺(tái)上有很多不利的因素:例如測(cè)試軟件可能會(huì)造成與開(kāi)發(fā)者爭(zhēng)奪時(shí)間的瓶頸;目標(biāo)環(huán)境還不具備;比起主機(jī)平臺(tái)環(huán)境,目標(biāo)環(huán)境通常是不精密的和不方便的等等。

從經(jīng)濟(jì)上和開(kāi)發(fā)效率上考慮,在開(kāi)發(fā)周期中軟件應(yīng)該盡可能多地工作在主機(jī)系統(tǒng)環(huán)境中,其中包括測(cè)試。

確定主機(jī)-目標(biāo)(Host-target)測(cè)試環(huán)境后,開(kāi)發(fā)測(cè)試人員又會(huì)遇到以下的問(wèn)題:例如多少開(kāi)發(fā)人員會(huì)卷入測(cè)試工作;多少軟件應(yīng)該測(cè)試,花費(fèi)多長(zhǎng)時(shí)間測(cè)試;在主機(jī)環(huán)境和目標(biāo)環(huán)境有哪些軟件工具,價(jià)格如何等等。

任何人或組織在測(cè)試嵌入式軟件時(shí)都應(yīng)深入考慮以上問(wèn)題,結(jié)合自身實(shí)際情況選定合理測(cè)試策略和方案。

分享到:
標(biāo)簽:測(cè)試 軟件
用戶(hù)無(wú)頭像

網(wǎng)友整理

注冊(cè)時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過(guò)答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫(kù),初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績(jī)?cè)u(píng)定2018-06-03

通用課目體育訓(xùn)練成績(jī)?cè)u(píng)定