本發(fā)明涉及軟件測(cè)試領(lǐng)域,特別涉及一種基于測(cè)試框架系統(tǒng)的測(cè)試方法、裝置和測(cè)試框架系統(tǒng)。
背景技術(shù):
目前,在芯片測(cè)試領(lǐng)域,相關(guān)的板級(jí)測(cè)試都是針對(duì)單一測(cè)試環(huán)境編寫的,即測(cè)試框架是針對(duì)單一目標(biāo)測(cè)試環(huán)境的,如果用戶需要對(duì)芯片進(jìn)行多種測(cè)試環(huán)境的測(cè)試,在測(cè)試完該測(cè)試環(huán)境后,為了對(duì)芯片進(jìn)行其他測(cè)試環(huán)境的測(cè)試,用戶需要重新編寫對(duì)應(yīng)的測(cè)試環(huán)境的代碼或者使用基于對(duì)應(yīng)的測(cè)試環(huán)境的測(cè)試框架進(jìn)行測(cè)試,以完成芯片的各種測(cè)試環(huán)境的測(cè)試。由此可以看出,在對(duì)芯片進(jìn)行多種測(cè)試環(huán)境下的測(cè)試時(shí),測(cè)試過(guò)程復(fù)雜,用戶需要執(zhí)行的操作較多,測(cè)試多種測(cè)試環(huán)境極為不便,用戶的測(cè)試體驗(yàn)不理想。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明旨在至少在一定程度上解決相關(guān)技術(shù)中的技術(shù)問(wèn)題之一。
為此,本發(fā)明的一個(gè)目的在于提出一種基于測(cè)試框架系統(tǒng)的測(cè)試方法,該方法為用戶提供了多種測(cè)試環(huán)境,使得用戶可根據(jù)需求自由選擇測(cè)試環(huán)境,方便了用戶在同一個(gè)測(cè)試框架下完成在多種測(cè)試環(huán)境下的測(cè)試,方便了測(cè)試人員進(jìn)行測(cè)試,提高了測(cè)試效率。
本發(fā)明的第二目的在于提出一種基于測(cè)試框架系統(tǒng)的測(cè)試裝置。
本發(fā)明的第三目的在于提出一種測(cè)試框架系統(tǒng)。
為實(shí)現(xiàn)上述目的,本發(fā)明第一方面實(shí)施例提出了一種測(cè)試框架系統(tǒng)的測(cè)試方法,包括以下步驟:為用戶提供多種測(cè)試環(huán)境,根據(jù)所述用戶的操作確定目標(biāo)測(cè)試環(huán)境;接收所述用戶編寫的測(cè)試代碼;基于所述目標(biāo)測(cè)試環(huán)境對(duì)所述測(cè)試代碼進(jìn)行編譯,并生成與所述目標(biāo)測(cè)試環(huán)境相關(guān)的測(cè)試文件;在所述目標(biāo)測(cè)試環(huán)境中運(yùn)行所述測(cè)試文件,并生成測(cè)試結(jié)果;以及為所述用戶提供測(cè)試結(jié)果。
根據(jù)本發(fā)明實(shí)施例的基于測(cè)試框架系統(tǒng)的測(cè)試方法,首先為用戶提供多種測(cè)試環(huán)境,根據(jù)用戶的操作確定目標(biāo)測(cè)試環(huán)境,然后接收用戶編寫的測(cè)試代碼,并基于目標(biāo)測(cè)試環(huán)境對(duì)測(cè)試代碼進(jìn)行編譯,以及生成與目標(biāo)測(cè)試環(huán)境相關(guān)的測(cè)試文件,而后在目標(biāo)測(cè)試環(huán)境中運(yùn)行測(cè)試文件,并生成測(cè)試結(jié)果,最后為用戶提供測(cè)試結(jié)果。由此,為用戶提供了多種測(cè) 試環(huán)境,使得用戶可根據(jù)需求自由選擇測(cè)試環(huán)境,方便了用戶在同一個(gè)測(cè)試框架下完成在多種測(cè)試環(huán)境下的測(cè)試,方便了測(cè)試人員進(jìn)行測(cè)試,提高了測(cè)試效率。
另外,根據(jù)本發(fā)明上述基于測(cè)試框架系統(tǒng)的測(cè)試方法還可以具有如下附加的技術(shù)特征:
在本發(fā)明的一個(gè)實(shí)施例中,所述為用戶提供多種測(cè)試環(huán)境,根據(jù)所述用戶的操作確定目標(biāo)測(cè)試環(huán)境,包括:提供第一圖形化配置界面,其中,所述第一圖形化配置界面中包含多種測(cè)試環(huán)境;接收所述用戶在所述第一圖形化配置界面中輸入的選擇指令;將所述用戶選擇的測(cè)試環(huán)境作為所述目標(biāo)測(cè)試環(huán)境。
在本發(fā)明的一個(gè)實(shí)施例中,所述為用戶提供多種測(cè)試環(huán)境,根據(jù)所述用戶的操作確定目標(biāo)測(cè)試環(huán)境,包括:提供第二圖形化配置界面,其中,所述第二圖形化配置界面包括初始測(cè)試環(huán)境;當(dāng)監(jiān)控到用戶未選擇所述第二圖形化配置界面中的所述初始測(cè)試環(huán)境時(shí),提供第三圖形化配置界面;接收所述用戶在第三圖形化配置界面中配置的測(cè)試環(huán)境參數(shù)信息;根據(jù)所述測(cè)試環(huán)境參數(shù)信息確定所述目標(biāo)測(cè)試環(huán)境。
在本發(fā)明的一個(gè)實(shí)施例中,所述基于所述目標(biāo)測(cè)試環(huán)境對(duì)所述測(cè)試代碼進(jìn)行編譯,并生成與所述目標(biāo)測(cè)試環(huán)境相關(guān)的測(cè)試文件,包括:接收所述用戶輸入的編譯指令;根據(jù)所述編譯指令對(duì)所述測(cè)試代碼進(jìn)行編譯;判斷所述測(cè)試代碼是否通過(guò)編譯;如果所述測(cè)試代碼通過(guò)編譯,則生成與所述目標(biāo)測(cè)試環(huán)境相匹配的測(cè)試文件。
在本發(fā)明的一個(gè)實(shí)施例中,所述在所述目標(biāo)測(cè)試環(huán)境中運(yùn)行所述測(cè)試文件,并生成測(cè)試結(jié)果,包括:接收所述用戶執(zhí)行所述測(cè)試文件的指令,并在所述目標(biāo)測(cè)試環(huán)境下運(yùn)行所述測(cè)試文件,以及生成測(cè)試結(jié)果。
在本發(fā)明的一個(gè)實(shí)施例中,上述基于測(cè)試框架系統(tǒng)的測(cè)試方法還包括:如果所述測(cè)試代碼未通過(guò)編譯,則為所述用戶提供提示信息,以使所述用戶根據(jù)所述提示信息修改所述測(cè)試代碼。
在本發(fā)明的一個(gè)實(shí)施例中,所述目標(biāo)測(cè)試環(huán)境包括編譯型模擬器vcs仿真測(cè)試環(huán)境、硬件加速器環(huán)境、現(xiàn)場(chǎng)可編程門陣列fpga環(huán)境、模擬器環(huán)境和真實(shí)系統(tǒng)晶片soc環(huán)境。
為實(shí)現(xiàn)上述目的,本發(fā)明第二方面實(shí)施例提出了一種基于測(cè)試框架系統(tǒng)的測(cè)試裝置,包括:確定模塊,用于為用戶提供多種測(cè)試環(huán)境,根據(jù)所述用戶的操作確定目標(biāo)測(cè)試環(huán)境;接收模塊,用于接收所述用戶編寫的測(cè)試代碼;生成模塊,用于基于所述目標(biāo)測(cè)試環(huán)境對(duì)所述測(cè)試代碼進(jìn)行編譯,并生成與所述目標(biāo)測(cè)試環(huán)境相關(guān)的測(cè)試文件;測(cè)試模塊,用于在所述目標(biāo)測(cè)試環(huán)境中運(yùn)行所述測(cè)試文件,并生成測(cè)試結(jié)果;以及提供模塊,用于為所述用戶提供測(cè)試結(jié)果。
根據(jù)本發(fā)明實(shí)施例的基于測(cè)試框架系統(tǒng)的測(cè)試裝置,首先確定模塊為用戶提供多種測(cè)試環(huán)境,根據(jù)用戶的操作確定目標(biāo)測(cè)試環(huán)境,然后接收模塊接收用戶編寫的測(cè)試代碼,然 后生成模塊基于目標(biāo)測(cè)試環(huán)境對(duì)測(cè)試代碼進(jìn)行編譯,并生成與目標(biāo)測(cè)試環(huán)境相關(guān)的測(cè)試文件,而后測(cè)試模塊在目標(biāo)測(cè)試環(huán)境中運(yùn)行測(cè)試文件,并生成測(cè)試結(jié)果,,最后提供模塊為用戶提供測(cè)試結(jié)果。由此,為用戶提供了多種測(cè)試環(huán)境,使得用戶可根據(jù)需求自由選擇測(cè)試環(huán)境,方便了用戶在同一個(gè)測(cè)試框架下完成在多種測(cè)試環(huán)境下的測(cè)試,方便了測(cè)試人員進(jìn)行測(cè)試,提高了測(cè)試效率。
上述基于測(cè)試框架系統(tǒng)的測(cè)試裝置還可以具有如下附加的技術(shù)特征:
在本發(fā)明的一個(gè)實(shí)施例中,所述確定模塊,具體用于:提供第一圖形化配置界面,其中,所述第一圖形化配置界面中包含多種測(cè)試環(huán)境;接收所述用戶在所述第一圖形化配置界面中輸入的選擇指令;將所述用戶選擇的測(cè)試環(huán)境作為所述目標(biāo)測(cè)試環(huán)境。
在本發(fā)明的一個(gè)實(shí)施例中,所述確定模塊,還用于:提供第二圖形化配置界面,其中,所述第二圖形化配置界面包括初始測(cè)試環(huán)境;當(dāng)監(jiān)控到用戶未選擇所述第二圖形化配置界面中的所述初始測(cè)試環(huán)境時(shí),提供第三圖形化配置界面;接收所述用戶在第三圖形化配置界面中配置的測(cè)試環(huán)境參數(shù)信息;根據(jù)所述測(cè)試環(huán)境參數(shù)信息確定所述目標(biāo)測(cè)試環(huán)境。
在本發(fā)明的一個(gè)實(shí)施例中,所述生成模塊,具體用于:接收所述用戶輸入的編譯指令;根據(jù)所述編譯指令對(duì)所述測(cè)試代碼進(jìn)行編譯;判斷所述測(cè)試代碼是否通過(guò)編譯;如果所述測(cè)試代碼通過(guò)編譯,則生成與所述目標(biāo)測(cè)試環(huán)境相匹配的測(cè)試文件。
在本發(fā)明的一個(gè)實(shí)施例中,所述測(cè)試模塊,具體用于:接收所述用戶執(zhí)行所述測(cè)試文件的指令,并在所述目標(biāo)測(cè)試環(huán)境下運(yùn)行所述測(cè)試文件,以及生成測(cè)試結(jié)果。
在本發(fā)明的一個(gè)實(shí)施例中,所述生成模塊,還用于:如果所述測(cè)試代碼未通過(guò)編譯,則為所述用戶提供提示信息,以使所述用戶根據(jù)所述提示信息修改所述測(cè)試代碼。
在本發(fā)明的一個(gè)實(shí)施例中,所述目標(biāo)測(cè)試環(huán)境包括編譯型模擬器vcs仿真測(cè)試環(huán)境、硬件加速器環(huán)境、現(xiàn)場(chǎng)可編程門陣列fpga環(huán)境、模擬器環(huán)境和真實(shí)系統(tǒng)晶片soc環(huán)境。
為了實(shí)現(xiàn)上述目的,本發(fā)明第三方面實(shí)施例提出了一種測(cè)試框架系統(tǒng)包括:本發(fā)明第二方面實(shí)施例的基于測(cè)試框架系統(tǒng)的測(cè)試裝置。
根據(jù)本發(fā)明實(shí)施例的測(cè)試框架系統(tǒng),首先為用戶提供多種測(cè)試環(huán)境,根據(jù)用戶的操作確定目標(biāo)測(cè)試環(huán)境,然后接收用戶編寫的測(cè)試代碼,并基于目標(biāo)測(cè)試環(huán)境對(duì)測(cè)試代碼進(jìn)行編譯,以及生成與目標(biāo)測(cè)試環(huán)境相關(guān)的測(cè)試文件,而后在目標(biāo)測(cè)試環(huán)境中運(yùn)行測(cè)試文件,并生成測(cè)試結(jié)果,最后為用戶提供測(cè)試結(jié)果。由此,為用戶提供了多種測(cè)試環(huán)境,使得用戶可根據(jù)需求自由選擇測(cè)試環(huán)境,方便了用戶在同一個(gè)測(cè)試框架下完成在多種測(cè)試環(huán)境下的測(cè)試,方便了測(cè)試人員進(jìn)行測(cè)試,提高了測(cè)試效率。
本發(fā)明附加的方面的優(yōu)點(diǎn)將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過(guò)本發(fā)明的實(shí)踐了解到。
附圖說(shuō)明
圖1是根據(jù)本發(fā)明一個(gè)實(shí)施例的基于測(cè)試框架系統(tǒng)的測(cè)試方法的流程圖。
圖2是根據(jù)本發(fā)明另一個(gè)實(shí)施例的基于測(cè)試框架系統(tǒng)的測(cè)試方法的流程圖。
圖3是根據(jù)本發(fā)明又一個(gè)實(shí)施例的基于測(cè)試框架系統(tǒng)的測(cè)試方法的流程圖。
圖4是根據(jù)本發(fā)明再一個(gè)實(shí)施例的基于測(cè)試框架系統(tǒng)的測(cè)試方法的流程圖。
圖5是根據(jù)本發(fā)明一個(gè)實(shí)施例的基于測(cè)試框架系統(tǒng)的測(cè)試裝置的方框示意圖。
具體實(shí)施方式
下面詳細(xì)描述本發(fā)明的實(shí)施例,所述實(shí)施例的示例在附圖中示出,其中自始至終相同或類似的標(biāo)號(hào)表示相同或類似的元件或具有相同或類似功能的元件。下面通過(guò)參考附圖描述的實(shí)施例是示例性的,旨在用于解釋本發(fā)明,而不能理解為對(duì)本發(fā)明的限制。
下面參照附圖來(lái)描述根據(jù)本發(fā)明實(shí)施例提出的基于測(cè)試框架系統(tǒng)的測(cè)試方法、裝置和測(cè)試框架系統(tǒng)。
圖1是根據(jù)本發(fā)明一個(gè)實(shí)施例的基于測(cè)試框架系統(tǒng)的測(cè)試方法的流程圖。
如圖1所示,該基于測(cè)試框架系統(tǒng)的測(cè)試方法包括以下步驟:
s1,為用戶提供多種測(cè)試環(huán)境,根據(jù)用戶的操作確定目標(biāo)測(cè)試環(huán)境。
其中,上述目標(biāo)測(cè)試環(huán)境可以包括但不限于編譯型模擬器vcs仿真測(cè)試環(huán)境、硬件加速器環(huán)境、現(xiàn)場(chǎng)可編程門陣列fpga(field-programmablegatearray)環(huán)境、模擬器環(huán)境和真實(shí)系統(tǒng)晶片soc(system-on-a-chip)環(huán)境。
其中,需要理解的是,用戶可以在linux或windows操作系統(tǒng)中操作測(cè)試框架系統(tǒng)確定目標(biāo)測(cè)試環(huán)境。
例如,在linux操作系統(tǒng)中,為用戶提供多種測(cè)試環(huán)境,如果接收到用戶選擇的測(cè)試環(huán)境為模擬器環(huán)境,則將用戶選擇的模擬器環(huán)境作為目標(biāo)測(cè)試環(huán)境,并在需要運(yùn)行測(cè)試時(shí),初始化該測(cè)試環(huán)境,并運(yùn)行目標(biāo)測(cè)試環(huán)境。
其中,需要理解的是,上述目標(biāo)測(cè)試環(huán)境可以是測(cè)試框架系統(tǒng)預(yù)先提供的測(cè)試環(huán)境。
在本發(fā)明的一個(gè)實(shí)施例中,如圖2所示,為用戶提供多種測(cè)試環(huán)境,根據(jù)用戶的操作確定目標(biāo)測(cè)試環(huán)境的具體過(guò)程可包括:
s11,提供第一圖形化配置界面,其中,第一圖形化配置界面中包含多種測(cè)試環(huán)境。
具體地,測(cè)試框架系統(tǒng)可提供第一圖形化配置界面,用戶可以通過(guò)鼠標(biāo)和鍵盤進(jìn)行簡(jiǎn)單操作輸入測(cè)試環(huán)境的選擇指令。
其中,需要理解的是,上述第一圖形化配置界面,即是一種可視化操作界面。
s12,接收用戶在第一圖形化配置界面中輸入的選擇指令。
s13,將用戶選擇的測(cè)試環(huán)境作為目標(biāo)測(cè)試環(huán)境。
例如,在linux操作系統(tǒng)中,用戶可通過(guò)鼠標(biāo)點(diǎn)擊或鍵盤敲擊打開測(cè)試框架系統(tǒng)中的第一圖形化配置界面,并可通過(guò)鼠標(biāo)或鍵盤進(jìn)行簡(jiǎn)單操作輸入測(cè)試環(huán)境的選擇指令,而后,測(cè)試框架系統(tǒng)根據(jù)該測(cè)試環(huán)境的選擇指令確定目標(biāo)測(cè)試環(huán)境。
在本發(fā)明的另一個(gè)實(shí)施例中,如圖3所示,為用戶提供多種測(cè)試環(huán)境,根據(jù)用戶的操作確定目標(biāo)測(cè)試環(huán)境的具體過(guò)程還可包括:
s101,提供第二圖形化配置界面,其中,第二圖形化配置界面包括初始測(cè)試環(huán)境。
其中,需要理解的是,上述第二圖形化配置界面,即是可視化操作界面。
s102,當(dāng)監(jiān)控到用戶未選擇第二圖形化配置界面中的初始測(cè)試環(huán)境時(shí),提供第三圖形化配置界面。
另外,如果監(jiān)控到用戶選擇第二圖形化配置界面中的初始測(cè)試環(huán)境,則在需要運(yùn)行測(cè)試時(shí),運(yùn)行該測(cè)試環(huán)境。
其中,需要理解的,上述第三圖形化配置界面是用戶根據(jù)需求自主配置測(cè)試環(huán)境參數(shù)信息的可視化操作界面。
在本發(fā)明的實(shí)施例中,用戶可以通過(guò)鼠標(biāo)和鍵盤將上述測(cè)試環(huán)境參數(shù)信息輸入上述第三圖形化配置界面,以便確定目標(biāo)測(cè)試環(huán)境。
s103,接收用戶在第三圖形化配置界面中配置的測(cè)試環(huán)境參數(shù)信息。
s104,根據(jù)測(cè)試環(huán)境參數(shù)信息確定目標(biāo)測(cè)試環(huán)境。
具體地,在用戶使用測(cè)試框架系統(tǒng)對(duì)芯片進(jìn)行測(cè)試的過(guò)程中,在接收到用戶的啟動(dòng)測(cè)試框架系統(tǒng)時(shí),可為用戶提供一個(gè)包含初始測(cè)試環(huán)境的第二圖形化配置界面,如果監(jiān)控到用戶選擇初始測(cè)試環(huán)境的指令,則確定該初始測(cè)試環(huán)境為目標(biāo)測(cè)試環(huán)境;如果監(jiān)控到用戶未選擇初始測(cè)試環(huán)境,則可為用戶提供第三圖形化配置界面,此時(shí),用戶可在該第三圖形化配置界面中手動(dòng)配置目標(biāo)測(cè)試環(huán)境的測(cè)試環(huán)境參數(shù),在用戶完成配置后,測(cè)試框架系統(tǒng)將根據(jù)用戶配置的測(cè)試環(huán)境參數(shù)確定目標(biāo)測(cè)試環(huán)境。
例如,在linux操作系統(tǒng)中,用戶可通過(guò)鼠標(biāo)點(diǎn)擊或鍵盤敲擊打開測(cè)試框架系統(tǒng)中的第二圖形化配置界面,并可通過(guò)鼠標(biāo)或鍵盤進(jìn)行簡(jiǎn)單操作選擇第二圖形化配置界面中的初始測(cè)試環(huán)境,或者打開測(cè)試框架系統(tǒng)中第三圖形化配置界面根據(jù)需求自主配置測(cè)試環(huán)境參數(shù)信息,而后,測(cè)試框架系統(tǒng)根據(jù)選擇的第二圖形化配置界面中的初始測(cè)試環(huán)境或者根據(jù)需求自主配置測(cè)試環(huán)境參數(shù)信息的第三圖形化配置界面,確定目標(biāo)測(cè)試環(huán)境。
s2,接收用戶編寫的測(cè)試代碼。
具體地,在根據(jù)測(cè)試環(huán)境參數(shù)信息確定目標(biāo)測(cè)試環(huán)境后,測(cè)試框架系統(tǒng)可自動(dòng)加載與 目標(biāo)測(cè)試環(huán)境對(duì)應(yīng)的測(cè)試目錄,以使得用戶在測(cè)試目錄中的相應(yīng)的測(cè)試子目錄中編寫測(cè)試代碼。
其中,需要理解的是,用戶在同一個(gè)測(cè)試子目錄中的測(cè)試可以一次進(jìn)行編譯,也就是說(shuō),測(cè)試目錄中所有的測(cè)試均可以進(jìn)行編譯。
其中,上述測(cè)試代碼的編程語(yǔ)言可以根據(jù)實(shí)際情況進(jìn)行標(biāo)定,例如,匯編編程語(yǔ)言、c編程語(yǔ)言、c++編程語(yǔ)言和c#編程語(yǔ)言等。
s3,基于目標(biāo)測(cè)試環(huán)境對(duì)測(cè)試代碼進(jìn)行編譯,并生成與目標(biāo)測(cè)試環(huán)境相關(guān)的測(cè)試文件。
s4,在目標(biāo)測(cè)試環(huán)境中運(yùn)行測(cè)試文件,并生成測(cè)試結(jié)果。
其中,需要理解的是,上述編譯測(cè)試代碼的過(guò)程可為先編譯測(cè)試框架部分,后編譯測(cè)試代碼部分。
基于目標(biāo)測(cè)試環(huán)境對(duì)測(cè)試代碼進(jìn)行編譯,并生成與目標(biāo)測(cè)試環(huán)境相關(guān)的測(cè)試文件,以及在目標(biāo)測(cè)試環(huán)境中運(yùn)行測(cè)試文件,并生成測(cè)試結(jié)果的具體過(guò)程,如圖4所示,可以包括:
s31,接收用戶輸入的編譯指令。
s32,根據(jù)編譯指令對(duì)測(cè)試代碼進(jìn)行編譯。
s33,判斷測(cè)試代碼是否通過(guò)編譯,如果是,則執(zhí)行步驟s34,如果否,則執(zhí)行步驟s36。
s34,生成與目標(biāo)測(cè)試環(huán)境相匹配的測(cè)試文件。
s35,接收用戶執(zhí)行測(cè)試文件的指令,并在目標(biāo)測(cè)試環(huán)境下運(yùn)行測(cè)試文件,以及生成測(cè)試結(jié)果。
s36,為用戶提供提示信息,以使用戶根據(jù)提示信息修改測(cè)試代碼。
具體地,當(dāng)測(cè)試框架系統(tǒng)接收到用戶輸入的編譯指令時(shí),首先編譯測(cè)試框架部分,而后編譯測(cè)試代碼部分。
如果兩部分都編譯完成(通過(guò)編譯),則根據(jù)測(cè)試環(huán)境的需求,鏈接成相應(yīng)的可執(zhí)行文件,然后轉(zhuǎn)換成測(cè)試環(huán)境相關(guān)的測(cè)試文件,在目標(biāo)環(huán)境中進(jìn)行測(cè)試,并生成測(cè)試結(jié)果。
如果兩部分在編譯的過(guò)程中出現(xiàn)問(wèn)題(未通過(guò)編譯)例如,測(cè)試代碼中存在語(yǔ)法錯(cuò)誤,則為用戶提供提示信息,以使用戶根據(jù)提示信息修改測(cè)試代碼。
其中,需要理解的是,根據(jù)目標(biāo)測(cè)試環(huán)境的不同上述測(cè)試文件的類型可能也會(huì)有所不同。例如,當(dāng)目標(biāo)測(cè)試環(huán)境為現(xiàn)場(chǎng)可編程門陣列fpga環(huán)境時(shí),上述測(cè)試文件可為二進(jìn)制文件。
s5,為用戶提供測(cè)試結(jié)果。
具體地,當(dāng)測(cè)試框架系統(tǒng)完成本輪的測(cè)試后,可將本輪測(cè)試的結(jié)果以測(cè)試結(jié)果文件的形式提供給用戶,以便用戶根據(jù)測(cè)試結(jié)果審查被測(cè)芯片、設(shè)備或集成環(huán)境的邏輯是否滿足預(yù)估的結(jié)果。
需要理解的是,在該目標(biāo)測(cè)試環(huán)境下完成測(cè)試后,測(cè)試框架系統(tǒng)還可以接收用戶切換測(cè)試環(huán)境的指令,并根據(jù)用戶的指令重新為用戶提供多種測(cè)試環(huán)境,以使用戶完成其他測(cè)試環(huán)境下的測(cè)試。也就是說(shuō),該測(cè)試框架系統(tǒng)是一種支持多種測(cè)試環(huán)境的測(cè)試框架系統(tǒng),用戶通過(guò)簡(jiǎn)單地操作即可完成各種不同測(cè)試環(huán)境的快速切換。
根據(jù)本發(fā)明實(shí)施例的基于測(cè)試框架系統(tǒng)的測(cè)試方法,首先為用戶提供多種測(cè)試環(huán)境,根據(jù)用戶的操作確定目標(biāo)測(cè)試環(huán)境,然后接收用戶編寫的測(cè)試代碼,并基于目標(biāo)測(cè)試環(huán)境對(duì)測(cè)試代碼進(jìn)行編譯,以及生成與目標(biāo)測(cè)試環(huán)境相關(guān)的測(cè)試文件,而后在目標(biāo)測(cè)試環(huán)境中運(yùn)行測(cè)試文件,并生成測(cè)試結(jié)果,最后為用戶提供測(cè)試結(jié)果。由此,為用戶提供了多種測(cè)試環(huán)境,使得用戶可根據(jù)需求自由選擇測(cè)試環(huán)境,方便了用戶在同一個(gè)測(cè)試框架下完成在多種測(cè)試環(huán)境下的測(cè)試,方便了測(cè)試人員進(jìn)行測(cè)試,提高了測(cè)試效率。
為了實(shí)現(xiàn)上述實(shí)施例,本發(fā)明還提出一種基于測(cè)試框架系統(tǒng)的測(cè)試裝置。
圖5是根據(jù)本發(fā)明一個(gè)實(shí)施例的基于測(cè)試框架系統(tǒng)的測(cè)試裝置的方框示意圖。
如圖5所示,該基于測(cè)試框架系統(tǒng)的測(cè)試裝置包括確定模塊100、接收模塊200、生成模塊300、測(cè)試模塊400和提供模塊500。
具體地,確定模塊100用于為用戶提供多種測(cè)試環(huán)境,根據(jù)用戶的操作確定目標(biāo)測(cè)試環(huán)境。
其中,上述目標(biāo)測(cè)試環(huán)境可以包括但不限于編譯型模擬器vcs仿真測(cè)試環(huán)境、硬件加速器環(huán)境、現(xiàn)場(chǎng)可編程門陣列fpga(field-programmablegatearray)環(huán)境、模擬器環(huán)境和真實(shí)系統(tǒng)晶片soc(system-on-a-chip)環(huán)境。
其中,需要理解的是,用戶通過(guò)確定模塊100可以在linux或windows操作系統(tǒng)中操作測(cè)試框架系統(tǒng)確定目標(biāo)測(cè)試環(huán)境。
例如,在linux操作系統(tǒng)中,確定模塊100為用戶提供多種測(cè)試環(huán)境,如果接收到用戶選擇的測(cè)試環(huán)境為模擬器環(huán)境,則將用戶選擇的模擬器環(huán)境作為目標(biāo)測(cè)試環(huán)境,并在需要運(yùn)行測(cè)試時(shí),初始化該測(cè)試環(huán)境,并運(yùn)行目標(biāo)測(cè)試環(huán)境。
其中,需要理解的是,上述目標(biāo)測(cè)試環(huán)境可以是測(cè)試框架系統(tǒng)預(yù)先提供的測(cè)試環(huán)境。
在本發(fā)明的一個(gè)實(shí)施例中,確定模塊100具體用于:
提供第一圖形化配置界面,其中,第一圖形化配置界面中包含多種測(cè)試環(huán)境。
具體地,確定模塊100可提供第一圖形化配置界面,用戶可以通過(guò)鼠標(biāo)和鍵盤進(jìn)行簡(jiǎn)單操作輸入測(cè)試環(huán)境的選擇指令。
其中,需要理解的是,上述第一圖形化配置界面,即是一種可視化操作界面。
以及,接收用戶在第一圖形化配置界面中輸入的選擇指令,并將用戶選擇的測(cè)試環(huán)境 作為目標(biāo)測(cè)試環(huán)境。
例如,在linux操作系統(tǒng)中,用戶可通過(guò)鼠標(biāo)點(diǎn)擊或鍵盤敲擊打開確定模塊100中的第一圖形化配置界面,并可通過(guò)鼠標(biāo)或鍵盤進(jìn)行簡(jiǎn)單操作輸入測(cè)試環(huán)境的選擇指令,而后,確定模塊100根據(jù)該測(cè)試環(huán)境的選擇指令確定目標(biāo)測(cè)試環(huán)境。
在本發(fā)明的另一個(gè)實(shí)施例中,確定模塊100還用于:
提供第二圖形化配置界面,其中,第二圖形化配置界面包括初始測(cè)試環(huán)境。
其中,需要理解的是,上述第二圖形化配置界面,即是一種可視化操作界面。
并且,當(dāng)監(jiān)控到用戶未選擇第二圖形化配置界面中的初始測(cè)試環(huán)境時(shí),提供第三圖形化配置界面。
另外,如果監(jiān)控到用戶選擇第二圖形化配置界面中的初始測(cè)試環(huán)境,則在需要運(yùn)行測(cè)試時(shí),運(yùn)行該測(cè)試環(huán)境。
其中,需要理解的,上述第三圖形化配置界面是用戶根據(jù)需求自主配置測(cè)試環(huán)境參數(shù)信息的可視化操作界面。
在本發(fā)明的實(shí)施例中,用戶可以通過(guò)鼠標(biāo)和鍵盤將上述測(cè)試環(huán)境參數(shù)信息輸入上述第三圖形化配置界面,以便確定目標(biāo)測(cè)試環(huán)境。
以及,接收用戶在第三圖形化配置界面中配置的測(cè)試環(huán)境參數(shù)信息,并根據(jù)測(cè)試環(huán)境參數(shù)信息確定目標(biāo)測(cè)試環(huán)境。
具體地,在用戶使用測(cè)試框架系統(tǒng)對(duì)芯片進(jìn)行測(cè)試的過(guò)程中,確定模塊100在接收到用戶的啟動(dòng)測(cè)試框架系統(tǒng)時(shí),可為用戶提供一個(gè)包含初始測(cè)試環(huán)境的第二圖形化配置界面,如果監(jiān)控到用戶選擇初始測(cè)試環(huán)境的指令,則確定該初始測(cè)試環(huán)境為目標(biāo)測(cè)試環(huán)境;如果監(jiān)控到用戶未選擇初始測(cè)試環(huán)境,則可為用戶提供第三圖形化配置界面,此時(shí),用戶可在該第三圖形化配置界面中手動(dòng)配置目標(biāo)測(cè)試環(huán)境的測(cè)試環(huán)境參數(shù),在用戶完成配置后,測(cè)試框架系統(tǒng)將根據(jù)用戶配置的測(cè)試環(huán)境參數(shù)確定目標(biāo)測(cè)試環(huán)境。
例如,在linux操作系統(tǒng)中,用戶可通過(guò)鼠標(biāo)點(diǎn)擊或鍵盤敲擊打開確定模塊100中的第二圖形化配置界面,并可通過(guò)鼠標(biāo)或鍵盤進(jìn)行簡(jiǎn)單操作選擇第二圖形化配置界面中的初始測(cè)試環(huán)境,或者打開確定模塊100中第三圖形化配置界面根據(jù)需求自主配置測(cè)試環(huán)境參數(shù)信息,而后,確定模塊100根據(jù)選擇的第二圖形化配置界面中的初始測(cè)試環(huán)境或者根據(jù)需求自主配置測(cè)試環(huán)境參數(shù)信息的第三圖形化配置界面,確定目標(biāo)測(cè)試環(huán)境。
接收模塊200用于接收用戶編寫的測(cè)試代碼。
具體地,確定模塊100在根據(jù)測(cè)試環(huán)境參數(shù)信息確定目標(biāo)測(cè)試環(huán)境后,接收模塊200可自動(dòng)加載與目標(biāo)測(cè)試環(huán)境對(duì)應(yīng)的測(cè)試目錄,以使得用戶在測(cè)試目錄中的相應(yīng)的測(cè)試子目錄中編寫測(cè)試代碼。
其中,需要理解的是,用戶在同一個(gè)測(cè)試子目錄中的測(cè)試可以一次進(jìn)行編譯,也就是說(shuō),測(cè)試目錄中所有的測(cè)試均可以進(jìn)行編譯。
其中,上述測(cè)試代碼的編程語(yǔ)言可以根據(jù)實(shí)際情況進(jìn)行標(biāo)定,例如,匯編編程語(yǔ)言、c編程語(yǔ)言、c++編程語(yǔ)言和c#編程語(yǔ)言等。
生成模塊300用于基于目標(biāo)測(cè)試環(huán)境對(duì)測(cè)試代碼進(jìn)行編譯,并生成與目標(biāo)測(cè)試環(huán)境相關(guān)的測(cè)試文件。
測(cè)試模塊400用于在目標(biāo)測(cè)試環(huán)境中運(yùn)行測(cè)試文件,并生成測(cè)試結(jié)果。
其中,需要理解的是,上述編譯測(cè)試代碼的過(guò)程可為先編譯測(cè)試框架部分,后編譯測(cè)試代碼部分。
在本發(fā)明的一個(gè)實(shí)施例中,生成模塊300具體用于接收用戶輸入的編譯指令,并根據(jù)編譯指令對(duì)測(cè)試代碼進(jìn)行編譯,而后判斷測(cè)試代碼是否通過(guò)編譯。如果測(cè)試代碼通過(guò)編譯,則生成與目標(biāo)測(cè)試環(huán)境相匹配的測(cè)試文件。
如果測(cè)試代碼未通過(guò)編譯,則為用戶提供提示信息,以使用戶根據(jù)提示信息修改測(cè)試代碼。
具體地,當(dāng)生成模塊300接收到用戶輸入的編譯指令時(shí),首先編譯測(cè)試框架部分,而后編譯測(cè)試代碼部分。
如果兩部分都編譯完成(通過(guò)編譯),則根據(jù)測(cè)試環(huán)境的需求,鏈接成相應(yīng)的可執(zhí)行文件,然后轉(zhuǎn)換成測(cè)試環(huán)境相關(guān)的測(cè)試文件,而后,當(dāng)測(cè)試模塊400接收到用戶執(zhí)行測(cè)試文件的指令時(shí),則在目標(biāo)測(cè)試環(huán)境下運(yùn)行測(cè)試文件,以及生成測(cè)試結(jié)果。
如果兩部分在編譯的過(guò)程中出現(xiàn)問(wèn)題(未通過(guò)編譯),例如,測(cè)試代碼中存在語(yǔ)法錯(cuò)誤,則為用戶提供提示信息,以使用戶根據(jù)提示信息修改測(cè)試代碼。
其中,需要理解的是,根據(jù)目標(biāo)測(cè)試環(huán)境的不同上述測(cè)試文件的類型可能也會(huì)有所不同。例如,當(dāng)目標(biāo)測(cè)試環(huán)境為現(xiàn)場(chǎng)可編程門陣列fpga環(huán)境時(shí),上述測(cè)試文件可為二進(jìn)制文件。
在本發(fā)明的另一個(gè)實(shí)施例中,測(cè)試模塊400具體用于接收用戶執(zhí)行測(cè)試文件的指令,并在目標(biāo)測(cè)試環(huán)境下運(yùn)行測(cè)試文件,以及生成測(cè)試結(jié)果。
具體地,當(dāng)測(cè)試模塊400接收到用戶執(zhí)行測(cè)試文件的指令時(shí),則在目標(biāo)測(cè)試環(huán)境下運(yùn)行測(cè)試文件,并生成測(cè)試結(jié)果,以便用戶獲取本輪測(cè)試的測(cè)試結(jié)果。
提供模塊500用于為用戶提供測(cè)試結(jié)果。
具體地,當(dāng)完成本輪的測(cè)試后,提供模塊500可將本輪測(cè)試的結(jié)果以測(cè)試結(jié)果文件的形式提供給用戶,以便用戶根據(jù)測(cè)試結(jié)果審查被測(cè)芯片、設(shè)備或集成環(huán)境的邏輯是否滿足預(yù)估的結(jié)果。
需要理解的是,在該目標(biāo)測(cè)試環(huán)境下完成測(cè)試后,測(cè)試框架系統(tǒng)還可以接收用戶切換測(cè)試環(huán)境的指令,并根據(jù)用戶的指令重新為用戶提供多種測(cè)試環(huán)境,以使用戶完成其他測(cè)試環(huán)境下的測(cè)試。也就是說(shuō),該測(cè)試框架系統(tǒng)是一種支持多種測(cè)試環(huán)境的測(cè)試框架系統(tǒng),用戶通過(guò)簡(jiǎn)單地操作即可完成各種不同測(cè)試環(huán)境的快速切換。
根據(jù)本發(fā)明實(shí)施例的基于測(cè)試框架系統(tǒng)的測(cè)試裝置,首先確定模塊為用戶提供多種測(cè)試環(huán)境,根據(jù)用戶的操作確定目標(biāo)測(cè)試環(huán)境,然后接收模塊接收用戶編寫的測(cè)試代碼,然后生成模塊基于目標(biāo)測(cè)試環(huán)境對(duì)測(cè)試代碼進(jìn)行編譯,并生成與目標(biāo)測(cè)試環(huán)境相關(guān)的測(cè)試文件,而后測(cè)試模塊在目標(biāo)測(cè)試環(huán)境中運(yùn)行測(cè)試文件,并生成測(cè)試結(jié)果,最后提供模塊為用戶提供測(cè)試結(jié)果。由此,為用戶提供了多種測(cè)試環(huán)境,使得用戶可根據(jù)需求自由選擇測(cè)試環(huán)境,方便了用戶在同一個(gè)測(cè)試框架下完成在多種測(cè)試環(huán)境下的測(cè)試,方便了測(cè)試人員進(jìn)行測(cè)試,提高了測(cè)試效率。
為了實(shí)現(xiàn)上述實(shí)施例,本發(fā)明還提出一種測(cè)試框架系統(tǒng)。
本發(fā)明實(shí)施例的測(cè)試框架系統(tǒng)包括本發(fā)明上述任一實(shí)施例的基于測(cè)試框架系統(tǒng)的測(cè)試裝置。
根據(jù)本發(fā)明實(shí)施例的測(cè)試框架系統(tǒng),首先為用戶提供多種測(cè)試環(huán)境,根據(jù)用戶的操作確定目標(biāo)測(cè)試環(huán)境,然后接收用戶編寫的測(cè)試代碼,并基于目標(biāo)測(cè)試環(huán)境對(duì)測(cè)試代碼進(jìn)行編譯,以及生成與目標(biāo)測(cè)試環(huán)境相關(guān)的測(cè)試文件,而后在目標(biāo)測(cè)試環(huán)境中運(yùn)行測(cè)試文件,并生成測(cè)試結(jié)果,最后為用戶提供測(cè)試結(jié)果。由此,為用戶提供了多種測(cè)試環(huán)境,使得用戶可根據(jù)需求自由選擇測(cè)試環(huán)境,方便了用戶在同一個(gè)測(cè)試框架下完成在多種測(cè)試環(huán)境下的測(cè)試,方便了測(cè)試人員進(jìn)行測(cè)試,提高了測(cè)試效率。
此外,術(shù)語(yǔ)“第一”、“第二”僅用于描述目的,而不能理解為指示或暗示相對(duì)重要性或者隱含指明所指示的技術(shù)特征的數(shù)量。由此,限定有“第一”、“第二”的特征可以明示或者隱含地包括至少一個(gè)該特征。在本發(fā)明的描述中,“多個(gè)”的含義是至少兩個(gè),例如兩個(gè),三個(gè)等,除非另有明確具體的限定。
在本說(shuō)明書的描述中,參考術(shù)語(yǔ)“一個(gè)實(shí)施例”、“一些實(shí)施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結(jié)合該實(shí)施例或示例描述的具體特征、結(jié)構(gòu)、材料或者特點(diǎn)包含于本發(fā)明的至少一個(gè)實(shí)施例或示例中。在本說(shuō)明書中,對(duì)上述術(shù)語(yǔ)的示意性表述不必須針對(duì)的是相同的實(shí)施例或示例。而且,描述的具體特征、結(jié)構(gòu)、材料或者特點(diǎn)可以在任一個(gè)或多個(gè)實(shí)施例或示例中以合適的方式結(jié)合。此外,在不相互矛盾的情況下,本領(lǐng)域的技術(shù)人員可以將本說(shuō)明書中描述的不同實(shí)施例或示例以及不同實(shí)施例或示例的特征進(jìn) 行結(jié)合和組合。
盡管上面已經(jīng)示出和描述了本發(fā)明的實(shí)施例,可以理解的是,上述實(shí)施例是示例性的,不能理解為對(duì)本發(fā)明的限制,本領(lǐng)域的普通技術(shù)人員在本發(fā)明的范圍內(nèi)可以對(duì)上述實(shí)施例進(jìn)行變化、修改、替換和變型。