查看: 2547|回復: 0
打印 上一主題 下一主題

淺析嵌入式系統軟件的可靠性測試難點(diǎn)

[復制鏈接]
跳轉到指定樓層
樓主
發(fā)表于 2017-8-2 10:07:33 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式



目前,嵌入式軟件的可靠性評價(jià)主要依賴(lài)測試,因為嵌入式軟件的開(kāi)發(fā)環(huán)境和軟件在嵌入式系統中的運行環(huán)境是不同的,因此嵌入式軟件測試的最大特點(diǎn)在于一個(gè)嵌入式軟件的測試可以分為基于宿主機和基于目標機的不同環(huán)境進(jìn)行測試,這往往也是嵌入式軟件測試與一般軟件測試最大的不同之處。
一、基于宿主機和基于目標機的環(huán)境測試
嵌入式軟件測試中基于宿主機環(huán)境的測試具有速度快、花費少等特點(diǎn),但由于是在模擬環(huán)境中進(jìn)行的,因此不能確定軟件在特定硬件環(huán)境中的問(wèn)題。而需要消耗更多的時(shí)間和成本是基于目標機環(huán)境測試的缺點(diǎn),并且一般來(lái)說(shuō)嵌入式系統的軟件和硬件在開(kāi)發(fā)的時(shí)候有著(zhù)時(shí)間同步性,目標機的環(huán)境在整個(gè)開(kāi)發(fā)的過(guò)程中是有限的,甚至還存在由于環(huán)境受限而造成的軟件不可用等情況,因此對于基于目標機環(huán)境的嵌入式軟件測試,在很多情況下是遠遠不能滿(mǎn)足其測試需求的。
與此同時(shí),由于在嵌入式軟件的開(kāi)發(fā)過(guò)程中,開(kāi)發(fā)環(huán)境和微控制器種類(lèi)使用的多而雜,因此被使用到的各種微型控制器對實(shí)時(shí)性、可靠性有著(zhù)更高的要求。這些特性給測試帶來(lái)了極大的困難,主要體現在以下幾點(diǎn):
1、測試策略的選擇,如何在宿主機和目標機環(huán)境的測試之間做出取舍;
2、軟件高度依賴(lài)硬件,不容易區分軟硬件錯誤;
3、交叉測試平臺的測試用例、測試結果上傳困難;
4、性能測試、確定性能瓶頸存在困難;
5、實(shí)施統一的自動(dòng)化測試比較困難。
二、嵌入式軟件的測試環(huán)境
因此,一般采用交叉開(kāi)發(fā)環(huán)境來(lái)搭建嵌入式軟件的測試環(huán)境。如單元測試、集成測試等可以在PC機上完成的測試,一般都在PC機上進(jìn)行測試,從而可以避免硬件環(huán)境的影響,提高測試效率。并且在后期的集成測試中,需要在具體的嵌入式軟件硬件環(huán)境中,搭建交叉測試環(huán)境來(lái)完成嵌入式軟件的測試。交叉測試環(huán)境的搭建需要注意以下幾個(gè)方面的內容:
1、主機與目標機之間的通信問(wèn)題
可以通過(guò)以太網(wǎng)或者串口進(jìn)行主機與目標機之間的物理連接,主機與目標機之間的數據格式可以預先進(jìn)行定義。
2、主機對目標機的測試控制
主要包括主機如何向目標機發(fā)送測試用例,如何跟蹤目標機的測試,查看是否正常進(jìn)行。
3、目標機測試結果的反饋
一般運行嵌入式系統的目標機沒(méi)有視頻顯示等便利的測試結果輸出端口,所以目標機上的異常、錯誤信息和正常響應信息等測試結果都需要返回到主機上進(jìn)行顯示和輸出。在嵌入式軟件測試環(huán)境的搭建過(guò)程中,需要測試嵌入式系統與已建設備是否協(xié)調,硬件設備電氣特征是否正常,以及主機與目標機之間的物理信道是否通暢等,從而保證測試結果不受到嵌入式軟件以外其它因素的影響。
三、嵌入式軟件可靠性測試方法
由于嵌入式系統的獨特性,導致其中運行的嵌入式軟件測試需要專(zhuān)用的測試工具,當今應用于嵌入式軟件測試的主流測試方法,按照其對嵌入式軟件測試技術(shù)和方法上的不同,主要可以分為嵌入式軟件靜態(tài)分析法、嵌入式軟件動(dòng)態(tài)測試法和嵌入式軟件綜合測試法三類(lèi)。
1、嵌入式軟件靜態(tài)分析法
嵌入式軟件靜態(tài)分析法主要是能夠在軟件開(kāi)發(fā)的早期就發(fā)現軟件中的缺陷,這對于對軟件的可靠性和安全性有著(zhù)較高要求的嵌入式軟件十分重要。使用靜態(tài)分析發(fā)對嵌入式軟件進(jìn)行測試時(shí),具體的功能主要體現在三個(gè)方面:
1)代碼質(zhì)量分析:采用靜態(tài)的方法對軟件質(zhì)量進(jìn)行分析與評估。
2)代碼規范性檢測:這種方法目前流行于很多知名企業(yè),制定或執行一定的編碼規范,在軟件開(kāi)發(fā)過(guò)程中,可以避免錯誤陷阱和代碼誤解。
3)代碼缺陷分析:對被測代碼進(jìn)行靜態(tài)掃描,查出可能存在的運行出現時(shí)錯誤的代碼段,這種分析可以檢測出動(dòng)態(tài)測試狀態(tài)下難以捕捉到的錯誤。
2、嵌入式軟件動(dòng)態(tài)測試法
由于嵌入式系統的復雜性,其嵌入式軟件一般都有特殊性,因此對嵌入式軟件進(jìn)行動(dòng)態(tài)測試較為困難,主要介紹以下幾種嵌入式軟件動(dòng)態(tài)測試方法:
1)嵌入式軟件“白盒”測試:嵌入式軟件白盒測試又稱(chēng)為結構測試,是指在了解被測裝置內部結構和軟件實(shí)現細節的基礎上進(jìn)行的軟件測試,根據測試需要可以打開(kāi)被測裝置,重點(diǎn)關(guān)注軟件內部的實(shí)現細節。
2)嵌入式軟件“黑盒”測試:嵌入式軟件黑盒測試又被稱(chēng)為功能測試,是指再不打開(kāi)被測裝置、不考慮其內部邏輯結構的情況下,通過(guò)功能測試項目來(lái)檢測每個(gè)功能是否符合測試要求。
3)嵌入式軟件“灰盒”測試:嵌入式軟件灰盒測試是介于白盒測試與黑盒測試之間的測試方法,該測試方法是建立在可以打開(kāi)被測裝置內部結構但不關(guān)注軟件實(shí)現細節的基礎上進(jìn)行的關(guān)鍵信息點(diǎn)測試,這種測試方法只是通過(guò)一些表征性的現象、事件、標志來(lái)判讀內部的運行狀態(tài),而不像白盒測試中那么詳細。
3、嵌入式軟件綜合測試法
在嵌入式軟件可靠性測試工程中,由于嵌入式系統的復雜性,嵌入式軟件發(fā)生的錯誤通常呈現多樣化的特點(diǎn),導致單一的靜態(tài)分析或者動(dòng)態(tài)測試都不能夠完全滿(mǎn)足測試工程的實(shí)際需要,因此很多嵌入式軟件的可靠性評價(jià)都會(huì )采用靜態(tài)分析與動(dòng)態(tài)測試相結合的綜合性測試法。

交流可以加黃工QQ2685896890


您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页