激情欧美日韩一区二区,浪货撅高贱屁股求主人调教视频,精品无码成人片一区二区98,国产高清av在线播放,色翁荡息又大又硬又粗视频

基于模塊化設計的嵌入式軟件測試方法

時(shí)間:2024-10-05 00:40:16 理工畢業(yè)論文 我要投稿
  • 相關(guān)推薦

基于模塊化設計的嵌入式軟件測試方法

摘要:分析嵌入式軟件的特點(diǎn),綜述傳統的軟件測試方法;針對嵌入式軟件的特點(diǎn),提出嵌入式軟件的四級測試流程和集成測試的測試模型,并結合開(kāi)發(fā)數控系統的實(shí)例進(jìn)行分析。

嵌入式設計已經(jīng)成為工業(yè)現代化、智能化的必經(jīng)之路,嵌入式產(chǎn)品已經(jīng)深入到各行各業(yè)。嵌入式系統的專(zhuān)用程度較高,系統的整體繼承性相對較小,為了保證系統的穩定性,軟件的測試成為嵌入式開(kāi)發(fā)的一個(gè)重要環(huán)節。由于嵌入式軟件自身的特點(diǎn),傳統的軟件測試理論不能直接用于嵌入式軟件的測試,因此,研究嵌入式軟件的測試有重要意義。

1 基本概念簡(jiǎn)述

1.1 模塊化設計

軟件的設計是以一定的方法為基礎的。面對越來(lái)越復雜的軟件開(kāi)發(fā)任務(wù),人們提出了各種軟件設計的模型。從用戶(hù)需求和系統要實(shí)現的任務(wù)功能出發(fā),把大型的軟件劃分為相對較小的模塊。為了減少模塊與模塊之間的關(guān)聯(lián)性,模塊之間的邏輯結構相對獨立,無(wú)函數的交叉調用,數據傳遞由全局變量完成,這就是模塊化設計的基本思想。模塊化設計的核心是模塊的獨立性,主要包括功能獨立性和結構獨立性,這使得軟件開(kāi)發(fā)的分工易于實(shí)現。軟件測試是軟件開(kāi)發(fā)中的關(guān)鍵環(huán)節,基于模塊化設計的軟件測試模型簡(jiǎn)單,查錯和糾錯都易于實(shí)現。下面以單鏈路數據傳遞的軟件模型說(shuō)明模塊化軟件設計的軟件測試的基本原則。

在圖1中,函數F(X-Y)定義為軟件模塊X到軟件模塊Y的接口函數,用來(lái)通過(guò)終端顯示由模塊X進(jìn)入模塊Y的數據。如果模塊C執行后發(fā)生錯誤,則由模塊B和模塊C的數據接口函數F(B-C)判斷是否是模塊B出來(lái)的數據就是錯誤的。如果F(B-C)不錯,則證明模塊C存在錯誤;如果F(B-C)傳遞數據錯誤,再察看F(A-B)傳出的數據是否錯誤,如果不錯則證明模塊B存在錯誤。用此依次前推孤立錯誤的方法,即可以很容易地定位錯誤所在的模塊。這就是模塊化設計時(shí)軟件測試的基本原則。

1.2 嵌入式系統

嵌入式系統開(kāi)發(fā)有其自身的特點(diǎn)。一般先進(jìn)行硬件部分的開(kāi)發(fā),主要包括形成裸機平臺,根據需要移植實(shí)時(shí)操作系統,開(kāi)發(fā)底層的硬件驅動(dòng)程序等。硬件平臺測試通過(guò)后,應該軟件的開(kāi)發(fā)調試是基于該硬件平臺進(jìn)行的,這同時(shí)也是對硬件平臺的一個(gè)測試。整個(gè)嵌入式系統開(kāi)發(fā)流程如圖2所示。因此可以說(shuō),嵌入式系統的開(kāi)發(fā)過(guò)程是一個(gè)軟硬件互相協(xié)調,互相反饋和互相測試的過(guò)程。一般來(lái)說(shuō),在嵌入式系統軟件中,底層驅動(dòng)程序、操作系統和應用程序的界線(xiàn)是不清晰的,根據需要甚至混編在一起。這主要是由于嵌入式系統中軟件對硬件的依賴(lài)性造成的。嵌入式軟件對硬件的依賴(lài)性要求,軟件測試時(shí)必須最大限度地模擬被測軟件的實(shí)際運行環(huán)境,以保證測試的可靠性。底層程序和應用程序界限的不清晰增加了測試時(shí)的難度,測試時(shí)只有確認嵌入式系統平臺及底層程序正確的情況下才能進(jìn)行應用程序的測試,而且在系統測試時(shí),錯誤的定位較為困難。軟件的專(zhuān)用性也是嵌入式軟件的一個(gè)重要特點(diǎn)。由于嵌入式軟件設計是以一定的目標硬件平臺為基礎的、面向固定的任務(wù)進(jìn)行的,因此,一旦被加載到目標系統上,功能必須完全確定。這個(gè)特點(diǎn)決定了嵌入式應用軟件的繼承性較差,延長(cháng)的系統的測試時(shí)間,增加了測試費用。嵌入式軟件的另外一個(gè)重要特點(diǎn)就是實(shí)時(shí)性。這是從軟件的執行角度出發(fā)說(shuō)明的,也就是說(shuō)嵌入式軟件的執行要滿(mǎn)足一定的時(shí)間約束。嵌入式系統中,應用軟件自身算法的復雜度和操作系統任務(wù)調度,決定了系統資源的分配和消耗,因此,對系統實(shí)時(shí)性進(jìn)行測試時(shí),要借助一定的測試工具對應用程序算法復雜度和操作系統任務(wù)調度進(jìn)行分析測試?梢(jiàn)嵌入式軟件與傳統的面向對象和面向過(guò)程的軟件相比有其自身的特點(diǎn)。針對這些特點(diǎn)對嵌入式軟件的測試進(jìn)行研究是必要的,有意義的。

1.3 嵌入式軟件測試

軟件測試是從經(jīng)濟、效率的角度出發(fā),對軟件代碼進(jìn)行質(zhì)量、正確性保證的一個(gè)過(guò)程。軟件測試是軟件開(kāi)發(fā)中的一個(gè)重要環(huán)節,也是軟件從開(kāi)發(fā)過(guò)程到應用過(guò)程的關(guān)鍵一環(huán)。嵌入式軟件也不例外,圖3給出了嵌入式軟件測試的統一測試模型。軟件測試逐漸成為一門(mén)成熟的學(xué)科,前人針對面向對象和面向過(guò)程的非實(shí)時(shí)軟件的測試作了大量的研究,其中大部分方法可以用到嵌入式軟件的測試。

根據不同的指標,軟件測試方法有不同的劃分方法。從軟件開(kāi)發(fā)過(guò)程中測試所處的不同階段可分為模塊測試、集成測試和系統測試。根據是否需要運行目標代碼分為動(dòng)態(tài)測試和靜態(tài)測試;根據目標代碼的可見(jiàn)性可分為白盒測試(結構測試)和黑盒測試(功能測試)。在軟件的測試中,每種測試方法都不是孤立的。為了最經(jīng)濟最有效地達到測試的目的,各種測試方法往往是互相嵌套的。例如,在軟件的單元測試階段,可以用黑盒測試和白盒測試的方法分別進(jìn)行動(dòng)態(tài)測試。

值得一提的是,近年來(lái)軟件測試中,測試代碼的覆蓋率逐漸成為軟件測試的統一標準,因此不管采用何種測試方法,盡可能地提高軟件測試中的代碼覆蓋率是必需的。軟件測試代碼覆蓋率是基于白盒測試方法的,因此,為了提高軟件測試的代碼覆蓋率,測試人員必須清楚源代碼的結構,擁有程序設計文檔,以便設計測試用例使測試盡可能地覆蓋程序內部結構的每條語(yǔ)句,提高代碼的覆蓋率。

【基于模塊化設計的嵌入式軟件測試方法】相關(guān)文章:

嵌入式軟件的覆蓋測試03-18

基于SIP的嵌入式終端軟件系統03-07

基于軟件無(wú)線(xiàn)電的GPP通信波形軟件設計方法03-11

基于信號接口的自動(dòng)測試系統軟件的設計與實(shí)現03-18

基于復雜度的嵌入式軟件功耗模型03-18

基于A(yíng)VR的嵌入式在線(xiàn)監測系統的設計11-22

基于PLD的嵌入式系統外存模塊設計03-18

嵌入式Linux下基于MiniGUI的信息終端軟件開(kāi)發(fā)03-18

面向網(wǎng)絡(luò )測試的嵌入式系統設計與實(shí)現03-07

激情欧美日韩一区二区,浪货撅高贱屁股求主人调教视频,精品无码成人片一区二区98,国产高清av在线播放,色翁荡息又大又硬又粗视频