一種可自動轉換的嵌入式軟件測試用例批量執(zhí)行方法
【專利摘要】一種可自動轉換的嵌入式軟件測試用例批量執(zhí)行方法,能夠自動控制半實物仿真測試環(huán)境完成批量執(zhí)行測試用例的任務,并且具有在測試執(zhí)行過程中根據用例執(zhí)行條件判斷用例是否應該執(zhí)行的能力,特別在測試用例或測試對象發(fā)生改變需要轉換測試環(huán)境的時候能夠按照需求自動轉換測試環(huán)境。
【專利說明】一種可自動轉換的嵌入式軟件測試用例批量執(zhí)行方法
[0001]術領域
[0002]本發(fā)明涉及一種可自動轉換的嵌入式軟件測試用例批量執(zhí)行方法,屬于軟件自動化測試領域。
【背景技術】
[0003]測試用例是指為了驗證軟件功能和性能指標,或者在測試過程中能夠覆蓋軟件所有分支路徑而設計的一組測試輸入、執(zhí)行條件和預期結果的集合。它是軟件測試的基礎,測試人員首先按照測試需求編寫測試用例,再執(zhí)行測試。為完成一次測試,往往需要編寫和執(zhí)行大量的測試用例。編寫測試用例需要按照一定的原則和方法或者使用輔助工具進行,不在本發(fā)明的討論范圍內,本發(fā)明旨在提供一種方法在自動化的情況下批量執(zhí)行測試用例,尤其是針對于嵌入式軟件的配置項測試或者系統(tǒng)測試。
[0004]在批量執(zhí)行測試用例的過程中,有的情況下某個測試用例的執(zhí)行結果可能會影響其他測試用例的執(zhí)行順序。例如:用例I是給某模塊上電并接收返回的自檢正常標志,如果實際結果是自檢正常則用例I通過并繼續(xù)執(zhí)行后邊的用例,如果不返回自檢正常標志,也就是說用例I不通過,則停止執(zhí)行后邊的測試用例。故批量執(zhí)行測試用例并不意味著全部順序執(zhí)行測試用例,而是需要提供一種機制,將多個測試用例組織起來,并且按照一定的規(guī)則執(zhí)行,例如分支和條件判斷等。
[0005]嵌入式軟件與普通軟件不同,強調實時特性,并且注重在特定硬件載體和運行環(huán)境下的功能性能特性,所以針對嵌入式軟件的測試比較依賴測試環(huán)境,目前針對嵌入式軟件測試比較常用的是全實物測試環(huán)境和半實物仿真測試環(huán)境。其中,半實物仿真測試環(huán)境由于靈活性好,開發(fā)周期短等優(yōu)點得到廣泛應用。目前應用較廣泛的半實物仿真測試環(huán)境如ADS2等雖然可以構建測試環(huán)境并且按照測試用例執(zhí)行測試,但是不具備批量執(zhí)行測試用例的能力。
[0006]在實際的測試中,經常會遇到測試過程中需要改變測試環(huán)境的情況,例如某一測試項目中,測試人員需要對多個被測件或者一個被測件的多個分組件進行測試,甚至一個被測件的多個工作階段所需的測試環(huán)境也會發(fā)生變化,這就要求批量執(zhí)行測試用例的方法必須具有隨著測試用例和測試對象改變自動改變或者說轉換測試環(huán)境的能力。
[0007]因此,目前需要本領域技術人員迫切解決的一個技術問題就是,提供一種可自動轉換的嵌入式軟件測試用例批量執(zhí)行方法,這種方法能夠自動控制半實物仿真測試環(huán)境完成批量執(zhí)行測試用例的任務,并且具有在測試執(zhí)行過程中根據用例執(zhí)行情況改變后續(xù)用例執(zhí)行順序,以及根據執(zhí)行條件判斷用例是否應該執(zhí)行的能力。特別的,在測試用例或測試對象發(fā)生改變需要轉換測試環(huán)境的時候能夠按照需求自動轉換測試環(huán)境。
【發(fā)明內容】
[0008]本發(fā)明技術解決問題:克服現(xiàn)有技術的不足,提供一種可自動轉換的嵌入式軟件測試用例批量執(zhí)行方法,能夠自動控制半實物仿真測試環(huán)境完成批量執(zhí)行測試用例的任務,并且具有在測試執(zhí)行過程中根據用例執(zhí)行條件判斷用例是否應該執(zhí)行的能力;特別的,在測試用例或測試對象發(fā)生改變需要轉換測試環(huán)境的時候能夠按照需求自動轉換測試環(huán)境。
[0009]本發(fā)明技術解決方案:一種可自動轉換的嵌入式軟件測試用例批量執(zhí)行方法,實現(xiàn)過程如下:
[0010]本發(fā)明所述方法中,引入“測試單元”的概念來表述測試用例與測試環(huán)境組成的新的結構,該名稱的引入只為方便表述,其本身的意義對本方法的實現(xiàn)沒有影響,叫“測試節(jié)點”、“測試塊”等等其他名稱也可,本發(fā)明中采用的名稱為“測試單元”。
[0011](I)建立測試用例和測試環(huán)境之間的映射關系,一個測試用例與一個測試環(huán)境組成一個“測試單元”??梢远鄠€測試用例對應一個相同的測試環(huán)境;
[0012](2)每個“測試單元”對應唯一的序號,并且記錄本“測試單元”執(zhí)行完后應該執(zhí)行的下一個“測試單元”的序號,“測試單元”對應的測試用例通過和不通過分別對應一個序號,如果下一個“測試單元”的序號為空則說明本“測試單元”執(zhí)行完后不需要繼續(xù)執(zhí)行測試,停止測試即可。每個“測試單元”記錄自己的執(zhí)行條件,可以根據某個已經執(zhí)行過的“測試單元”對應的測試用例的執(zhí)行情況判斷本“測試單元”是否應該執(zhí)行,也可以根據系統(tǒng)中的某個變量的值是否符合預期來判斷本“測試單元”是否應該執(zhí)行。針對不同的情況,如果每個“測試單元”不是記錄下一個節(jié)點的序號而是記錄下一個節(jié)點的指針或者引用,對本方法的實現(xiàn)并無影響,只要保證本“測試單元”執(zhí)行完后可以獲得所需信息并順利執(zhí)行下一個“測試單元”即可;
[0013](3)使用數據結構保存所有的“測試單元”,數組、鏈表、STL庫中的容器等結構都可以,但是要保證能夠通過測試單元的序號獲得測試單元的所有信息(得到指針、引用或者實例);
[0014](4)測試過程開始后,第一個“測試單元”開始執(zhí)行;
[0015](5)測試用例執(zhí)行前首先判斷測試環(huán)境是否需要轉換,如果需要轉換按照“測試單元”的配置轉換測試環(huán)境,否則直接開始執(zhí)行測試用例。針對不同領域的測試,轉換測試環(huán)境所要進行的工作不盡相同。本發(fā)明所述方法特別適用于嵌入式軟件的測試,通常嵌入式軟件轉換測試環(huán)境時很可能需要改變測試環(huán)境中的硬件接口以及各接口的各通道上的協(xié)議配置和數據幀結構的定義,此外,還需要描述本測試環(huán)境需要收集哪些硬件接口上的哪些數據。可提前將每個測試環(huán)境對應的各接口上的通訊協(xié)議進行建?;蛘叻庋b成一個子程序,在需要轉換測試環(huán)境的時候進行調用和實現(xiàn);
[0016](6)執(zhí)行完判斷本測試用例是否通過,以便確定下一個執(zhí)行的“測試單元”。如果本“測試單元”因為執(zhí)行條件不符合沒有執(zhí)行,則按照“測試單元”對應的測試用例不通過執(zhí)行后續(xù)的測試過程;
[0017](7)在測試執(zhí)行過程中將所有用例的執(zhí)行情況和得到的實際輸出記錄起來,等待測試人員分析。
[0018]所述步驟(5)中按照下列進行測試環(huán)境的判斷和轉換:
[0019](I)檢查測試環(huán)境要求的接口與當前測試環(huán)境中已經初始化的接口是否相同,不相同則打開缺少的接口并關閉多余的接口 ;如果相同則檢查各接口的各個通道配置是否正確;[0020](2)檢查各接口每個通道的工作模式是否與測試環(huán)境要求一致,如果不一致按照被測件接口控制文檔和通訊協(xié)議的要求重新初始化該通道的工作模式;
[0021](3)檢查各接口每個通道上的數據幀結構是否與測試環(huán)境要求一致,如果不一致則重新定義該通道上的數據幀結構;
[0022](4)檢查測試過程中需要收集的測試數據是否有變化,有變化則按照測試環(huán)境的要求修改需要收集的值。
[0023]本發(fā)明與現(xiàn)有技術相比的優(yōu)點在于:本發(fā)明通過將測試用例與測試用例執(zhí)行需要的測試環(huán)境進行映射組成“測試單元”,使得測試用例執(zhí)行前可以確定本用例需要什么樣的測試環(huán)境,并與當前的測試環(huán)境進行對比,如果需要轉換測試環(huán)境則按照測試用例的需求自動轉換測試環(huán)境。另外,本發(fā)明所述方法為每一個“測試單元”分配一個唯一的序號,并且每個“測試單元”記錄自己執(zhí)行完畢后下一個執(zhí)行的“測試單元”的序號,故能夠自動完成批量執(zhí)行測試用例的任務,并且具有在測試執(zhí)行過程中根據用例執(zhí)行條件判斷用例是否應該執(zhí)行的能力。
【專利附圖】
【附圖說明】
[0024]圖1為本發(fā)明實施例中的半實物仿真測試環(huán)境的組成模塊和基本工作過程;
[0025]圖2為本發(fā)明的實現(xiàn)流程示意圖;
[0026]圖3為本發(fā)明實施例中構建“測試單元”的實現(xiàn)過程;
[0027]圖4為本發(fā)明中“測試單元”自動執(zhí)行的實現(xiàn)過程;
[0028]圖5為本發(fā)明中的實施例中檢查并轉換測試環(huán)境的實現(xiàn)過程。
【具體實施方式】
[0029]為使本發(fā)明要解決的技術問題、技術方案和優(yōu)點更加清楚,下面將結合附圖及具體實施例進行詳細描述。
[0030]本發(fā)明一種可自動轉換的嵌入式軟件測試用例批量執(zhí)行方法,這種方法能夠自動控制半實物仿真測試環(huán)境完成批量執(zhí)行測試用例的任務,并且具有在測試執(zhí)行過程中根據用例執(zhí)行條件判斷用例是否應該執(zhí)行的能力。特別的,在測試用例或測試對象發(fā)生改變需要轉換測試環(huán)境的時候能夠按照需求自動轉換測試環(huán)境。
[0031]為更清楚的介紹本發(fā)明在具體實施例中的應用,首先對發(fā)明實施例針對的系統(tǒng)的結構做簡單介紹:
[0032]本測試系統(tǒng)屬于半實物仿真測試環(huán)境,本測試系統(tǒng)測試用例是由測試腳本的方式實現(xiàn)的;測試環(huán)境由圖形化仿真建模模塊、收集數據定制模塊共同構成,其中,圖形化仿真建模模塊主要用于描述建立測試環(huán)境所需的硬件接口以及各接口的各通道上的協(xié)議配置以及數據幀結構的定義,將硬件接口上的數據幀定義為“變量”,在收集數據定制模塊配置需要收集哪些變量可以確定本測試環(huán)境需要收集哪些測試數據。
[0033]如圖1、2所示,本發(fā)明在實施例中的具體步驟如下:
[0034]步驟一:首先建立測試用例和測試環(huán)境之間的映射關系,一個測試用例與一個測試環(huán)境組成一個“測試單元”,可以多個測試用例對應一個相同的測試環(huán)境。本發(fā)明實施例針對的嵌入式軟件半實物仿真測試平臺中,測試用例是使用測試腳本實現(xiàn)的,測試環(huán)境由圖形化仿真建模模塊、收集數據定制模塊共同構成。
[0035]測試開始之前,用戶首先根據I⑶文檔(接口控制文檔)和被測件對外通訊協(xié)議進行交聯(lián)環(huán)境建模,建模過程中配置測試環(huán)境需要使用那些類型的接口,每種接口需要使用幾個通道,以及通道上數據的格式和通道的協(xié)議屬性信息(例如波特率、校驗方式等)等。建模完成后配置本測試環(huán)境在測試過程中需要收集哪些硬件接口中的值,以及以何種方式進行接收(輪詢、中斷)等。然后將測試用例轉換為可以在測試環(huán)境中執(zhí)行的測試腳本,通過在測試腳本中操作建模過程中定制好的各硬件接口收發(fā)數據完成嵌入式軟件測試。
[0036]測試用例和測試環(huán)境都定制完成后,將測試用例和測試環(huán)境映射起來,本實施例中使用一個類CTestUnit將測試用例類(CTestCase)和測試環(huán)境類(CTestEnvironment)的實例作為成員管理起來。也可以使用結構體等方式實現(xiàn),只要能夠建立其測試用例和測試環(huán)境之間的映射組成“測試單元”即可,對本發(fā)明所述方法本身的實現(xiàn)沒有影響。
[0037]步驟二:每個“測試單元”對應唯一的序號,并且記錄本“測試單元”執(zhí)行完后應該執(zhí)行的下一個“測試單元”的序號,“測試單元”對應的測試用例通過和不通過分別對應一個序號,如果下一個“測試單元”的序號為空則說明本“測試單元”執(zhí)行完后不需要繼續(xù)執(zhí)行測試,停止測試即可。
[0038]在本發(fā)明實施例中,為“測試單元”類CTestUnit增加成員變量“ID”,用于記錄該“測試單元”的序號,CTestUnit類的實例在構造的時候自動獲取當前有多少個實例已經構造,然后在CTestUnit類實例總數的基礎上加一,為當前實例的ID。如果實現(xiàn)“測試單元”的方法不相同,則采取別的方式生成ID,只要保證所有“測試單元”的ID都不相同即可,具體的實現(xiàn)方式與本發(fā)明所述方法無關。本實施例中,由于生成的所有CTestUnit類的實例都保存在步驟三所述的數據結構中,所以只要獲取該數據結構中保存的實例數即可知當前有多少個實例已經構造,當然,也可以通過給CTestUnit類添加靜態(tài)成員等方法實現(xiàn)。
[0039]CTestUnit類中增加成員NextID_l和NextID_2,分別用來記錄本“測試單元”中的用例執(zhí)行通過或者不通過下一個應該執(zhí)行的“測試單元”的ID,如果為-1則說明本“測試單元”執(zhí)行后不需要繼續(xù)執(zhí)行測試。針對不同的情況,如果每個“測試單元”不是記錄下一個節(jié)點的序號而是記錄下一個節(jié)點的指針或者引用,對本發(fā)明的實現(xiàn)并無影響,只要保證本“測試單元”執(zhí)行完后可以順利獲得所需信息并執(zhí)行下一個“測試單元”即可;
[0040]每個“測試單元”記錄自己的執(zhí)行條件,可以根據某個已經執(zhí)行過的“測試單元”對應的測試用例的執(zhí)行情況判斷本“測試單元”是否應該執(zhí)行,也可以根據系統(tǒng)中的某個變量的值是否符合預期來判斷本“測試單元”是否應該執(zhí)行。在本實施例中,采用以下方案實現(xiàn)該功能:為CTestUnit增加兩個字符串成員ConditionUnit和ConditionValue,ConditionUnit用來記錄以某個“測試單元”的執(zhí)行情況作為判斷的執(zhí)行條件,例如,1:1表示序號為I的“測試單元”對應的測試用例如果通過則執(zhí)行本“測試單元”;1:0表示序號為I的“測試單元”對應的測試用例如果不通過則執(zhí)行本“測試單元”;ConditionValue用來記錄以某個變量的變量值作為判斷的執(zhí)行條件,例如:Variable_l=l表示如果變量Variable為I則執(zhí)行本“測試單元”。
[0041]為CTestUnit類增加一個成員變量isCasePass,用于記錄本“測試單元”對應的測試用例的測試結果,如果用例通過將isCasePass置為I,如果不通過將其置為O,所有CTestUnit在初始化時都將isCasePass置為O ;[0042]本發(fā)明實施例中構建“測試單元”的具體流程如圖3。
[0043]步驟三:使用數據結構保存所有的“測試單元”,數組、鏈表、STL里的容器等結構都可以,但是要保證能夠通過“測試單元”的序號獲得“測試單元”的所有信息(得到指針或者實例)。
[0044]本發(fā)明實施例中使用STL標準庫中的map保存“測試單元”,構造“測試單元”的時候,首先調用CTestUnit類的構造函數,構造函數會自動生成本“測試單元”的序號,SPCTestUnit類的ID成員,將ID作為map的key,新構造的CTestUnit類實例的地址作為map的value插入到map中,這要在需要根據序號獲取“測試單元”信息的時候,可以使用map的find函數以很高的效率實現(xiàn)。本發(fā)明所述方法應用于其他系統(tǒng)時,如果使用別的結構保存“測試單元”,也可以使用遍歷所有“測試單元”比較序號的方式獲得所需信息,只對實現(xiàn)效率有影響,與發(fā)明方法的實現(xiàn)無關; [0045]步驟四至步驟七為本發(fā)明方法中“測試單元”自動執(zhí)行的實現(xiàn)過程,如圖4所示。
[0046]步驟四:測試過程開始后,由第一個“測試單元”開始執(zhí)行。執(zhí)行前首先判斷“測試單元”執(zhí)行的條件是否符合,如果不符合則不執(zhí)行本節(jié)點,直接執(zhí)行本節(jié)點測試用例不通過時執(zhí)行的下一個“測試單元”。
[0047]對第一個“測試單元”來說,ConditionUnit的條件沒有意義,因為本次測試過程中還沒有執(zhí)行過任何“測試單元”;對第一個之后的“測試單元”來說,如果ConditionUnit條件存在,則判斷該條件是否符合,通過獲取指定“測試單元”的isCasePass成員變量的值并與給定的條件比較,可以明確是否符合ConditionUnit條件,如果符合則繼續(xù)運行不符合直接跳到步驟六運行下一個“測試單元”;如果ConditionValue的條件存在,則說明本“測試單元”運行前需要檢查系統(tǒng)中的某個變量值是否符合條件再運行“測試單元”;在本發(fā)明實施例中,測試用例是用測試腳本實現(xiàn)的,故可以將條件的判斷添加到測試腳本中,首先獲取“測試單元”對應的測試用例,并獲取實現(xiàn)測試用例的測試腳本,然后在測試腳本之前添加條件判斷語句,例如,ConditionValue為Variable_l=l的情況下,在測試腳本之前添加語句if (Variable」!=1) {return;},這樣在測試用例開始運行的時候會首先檢查條件是否符合,如果不符合直接退出;上文示例中的if (Variable」!=1) {return;}語句使用C語言語法,本發(fā)明實施例中的測試腳本使用C語法,如果應用本方法的其他測試系統(tǒng)使用其他腳本實現(xiàn),采用類似的結構構建條件檢查語句即可;如果針對的測試系統(tǒng)實現(xiàn)測試用例的方法不是測試腳本,只需要在正式執(zhí)行測試用例之前先判斷系統(tǒng)中的變量是否符合條件要求即可,具體的實現(xiàn)方式對本發(fā)明沒有影響;
[0048]步驟五:測試用例執(zhí)行前先判斷測試環(huán)境是否需要轉換,如果需要轉換按照“測試單元”的配置轉換測試環(huán)境,否則直接開始執(zhí)行測試用例。在本發(fā)明實施例中,可以按照以下流程對測試環(huán)境進行判斷和轉換:首先比較當前測試環(huán)境中已經初始化的接口和測試環(huán)境要求的接口是否相同,如果不相同則關閉多余的接口,打開缺少的接口,按照測試環(huán)境配置中記錄的各接口各通道的I⑶配置設置好各個硬件接口上的各通道的工作模式。第二步檢查各接口上的變量是否和根據通信協(xié)議配置的數據幀結構相符,變量的定義是為了方便在測試腳本中操作接口進行數據收發(fā),并不是采用本發(fā)明的所有測試系統(tǒng)都需要變量的概念,但是所有系統(tǒng)都需要一種描述接口上的數據幀長度和結構的方法,進行測試環(huán)境轉換的時候務必保證數據幀的結構和長度與通信協(xié)議相符。最后一步是根據測試用例的要求修改本測試環(huán)境在測試過程中需要收集哪些硬件接口中的值,以及以何種方式進行接收(輪詢、中斷)等。
[0049]本發(fā)明實施例中檢查并轉換測試環(huán)境的實現(xiàn)過程見圖5所示。
[0050]針對不同的領域的測試,轉換測試環(huán)境所要進行的工作不盡相同,本發(fā)明所述方法特別適用于嵌入式軟件的測試,通常嵌入式軟件轉換測試環(huán)境時很可能需要改變測試環(huán)境中的硬件接口和通訊協(xié)議,也可提前將每個測試環(huán)境對應的各接口上的通訊協(xié)議進行建?;蛘叻庋b成一個子程序,在需要轉換測試環(huán)境的時候進行調用和實現(xiàn);
[0051]步驟六:“測試單元”執(zhí)行完后根據測試用例的預期輸出判斷本“測試單元”對應的測試用例是否通過測試,并且將是否通過記錄到CTestUnit類的成員isCasePass中。根據本“測試單元”對應的測試用例的執(zhí)行情況確定下一個執(zhí)行的“測試單元”,根據CTestUnit類的成員NextID_l和NextID_2,從保存所有“測試單元”的數據結構中獲得下一個執(zhí)行的“測試單元”的所有信息。如果本“測試單元”因為執(zhí)行條件不符合沒有執(zhí)行,則按照“測試單元”對應的測試用例不通過執(zhí)行后續(xù)的測試過程;
[0052]步驟七:在測試執(zhí)行過程中將所有用例的執(zhí)行情況和得到的實際輸出記錄下來,步驟五中已經根據測試用例要求將需要收集哪些接口上的數據以及以什么方式收集定制至IJ 了測試環(huán)境中,在測試過程中收集到的所有測試數據保存到數據庫中,每個“測試單元”對應一個測試數據文件,并且以測試用例的名稱命名,以便測試結束后方便測試人員進行分析。
[0053]本發(fā)明未詳細闡述部分屬于本領域公知技術。
[0054]以上所述,僅為本發(fā)明部分【具體實施方式】,但本發(fā)明的保護范圍并不局限于此,任何熟悉本領域的人員在本發(fā)明揭露的技術范圍內,可輕易想到的變化或替換,都應涵蓋在本發(fā)明的保護范圍之內。
【權利要求】
1.一種可自動轉換的嵌入式軟件測試用例批量執(zhí)行方法,其特征在于實現(xiàn)步驟如下: (1)建立測試用例和測試環(huán)境之間的映射關系,一個測試用例與一個測試環(huán)境組成一個測試單元; (2)每個測試單元對應唯一的序號,并且記錄本測試單元執(zhí)行完后應該執(zhí)行的下一個測試單元的序號,測試單元對應的測試用例通過和不通過分別對應一個序號,如果下一個測試單元的序號為空,則說明該測試單元執(zhí)行完后不需要繼續(xù)執(zhí)行測試,停止測試即可;每個測試單元均記錄自己的執(zhí)行條件; (3)使用數據結構保存所有的測試單元,保證能夠通過測試單元的序號獲得測試單元的所有信息; (4)測試過程開始后,第一個測試單元開始執(zhí)行; (5)測試用例執(zhí)行前,首先判斷測試環(huán)境是否需要轉換,如果需要轉換按照測試單元的配置轉換測試環(huán)境,否則直接開始執(zhí)行測試用例; (6)執(zhí)行完判斷該測試用例是否通過,以便確定下一個執(zhí)行的測試單元,如果該測試單元因為執(zhí)行條件不符合沒有執(zhí)行,則按照測試單元對應的測試用例不通過執(zhí)行后續(xù)的測試過程; (7)在測試執(zhí)行過程中將所有用例的執(zhí)行情況和得到的實際輸出記錄起來,等待測試人員分析。
2.根 據權利要求1所述的可自動轉換的嵌入式軟件測試用例批量執(zhí)行方法,其特征在于:所述步驟(1)中可以多個測試用例對應一個相同的測試環(huán)境。
3.根據權利要求1所述的可自動轉換的嵌入式軟件測試用例批量執(zhí)行方法,其特征在于:所述步驟(2)中每個測試單元記錄自己的執(zhí)行條件時,可以根據某個已經執(zhí)行過的測試單元對應的測試用例的執(zhí)行情況判斷該測試單元是否應該執(zhí)行,也可以根據系統(tǒng)中的某個變量的值是否符合預期來判斷該測試單元是否應該執(zhí)行;針對不同的情況,如果每個測試單元不是記錄下一個節(jié)點的序號而是記錄下一個節(jié)點的指針或者引用,實現(xiàn)并無影響,只要保證該測試單元執(zhí)行完后獲得所需信息并順利執(zhí)行下一個測試單元即可。
4.根據權利要求1所述的可自動轉換的嵌入式軟件測試用例批量執(zhí)行方法,其特征在于:所述步驟(2)中采用數組、鏈表、STL庫中的容器結構均可。
5.根據權利要求1所述的可自動轉換的嵌入式軟件測試用例批量執(zhí)行方法,其特征在于:所述步驟(5)中按照下列進行測試環(huán)境的判斷和轉換: (1)檢查測試環(huán)境要求的接口與當前測試環(huán)境中已經初始化的接口是否相同,不相同則打開缺少的接口并關閉多余的接口 ;如果相同則檢查各接口的各個通道配置是否正確; (2)檢查各接口每個通道的工作模式是否與測試環(huán)境要求一致,如果不一致按照被測件接口控制文檔和通訊協(xié)議的要求重新初始化該通道的工作模式; (3)檢查各接口每個通道上的數據幀結構是否與測試環(huán)境要求一致,如果不一致則重新定義該通道上的數據幀結構; (4)檢查測試過程中需要收集的測試數據是否有變化,有變化則按照測試環(huán)境的要求修改需要收集的值。
【文檔編號】G06F11/36GK103605606SQ201310628786
【公開日】2014年2月26日 申請日期:2013年12月1日 優(yōu)先權日:2013年12月1日
【發(fā)明者】楊順昆, 劉斌, 司維 申請人:北京航空航天大學