本技術(shù)涉及測(cè)試,具體涉及一種ota升級(jí)與e-call互斥的自動(dòng)化測(cè)試方法、裝置、設(shè)備和介質(zhì)。
背景技術(shù):
1、ota(over-the-air)是一種無(wú)線遠(yuǎn)程固件升級(jí)技術(shù),它允許設(shè)備通過(guò)網(wǎng)絡(luò)從遠(yuǎn)程服務(wù)器下載新的軟件更新包,從而對(duì)自身系統(tǒng)進(jìn)行升級(jí)。e-call(emergency?call)指車(chē)載緊急呼叫系統(tǒng),它的基本原理是:在發(fā)生車(chē)禍時(shí),車(chē)內(nèi)人員主動(dòng)或車(chē)載系統(tǒng)自動(dòng)撥打緊急呼救電話,同時(shí)通過(guò)語(yǔ)音通道將車(chē)禍相關(guān)信息發(fā)送到呼叫中心。由于ota升級(jí)是給車(chē)輛零部件的軟件進(jìn)行升級(jí),在ota升級(jí)過(guò)程中存在很多互斥條件,其中e-call就是其中一個(gè)互斥條件。ota的e-call互斥是指車(chē)輛在觸發(fā)e-call時(shí),無(wú)法進(jìn)行ota升級(jí),如果此時(shí)觸發(fā)ota升級(jí),車(chē)輛中控屏?xí)崾尽鞍惭b前環(huán)境檢查失敗”。
2、目前,針對(duì)ota與e-call互斥的測(cè)試通常是測(cè)試人員手動(dòng)觸發(fā)e-call,在e-call信號(hào)持續(xù)期間,再觸發(fā)ota升級(jí)。但是,觸發(fā)e-call后,車(chē)載中控屏?xí)M(jìn)入全屏顯示,無(wú)法觸發(fā)ota升級(jí);如果是通過(guò)預(yù)約ota升級(jí)或先觸發(fā)ota升級(jí),再觸發(fā)e-call,則測(cè)試人員人工卡點(diǎn)效率低下且失敗率較高,人力資源無(wú)法得到充分利用。
3、有鑒于此,特提出本發(fā)明。
技術(shù)實(shí)現(xiàn)思路
1、以下給出一個(gè)或多個(gè)方面的簡(jiǎn)要概述以提供對(duì)這些方面的基本理解。此概述不是所有構(gòu)想到的方面的詳盡綜覽,并且既非旨在指認(rèn)出所有方面的關(guān)鍵性或決定性要素亦非試圖界定任何或所有方面的范圍。其唯一的目的是要以簡(jiǎn)化形式給出一個(gè)或多個(gè)方面的一些概念以為稍后給出的更加詳細(xì)的描述之序。
2、本技術(shù)提供一種ota升級(jí)與e-call互斥的自動(dòng)化測(cè)試方法,其有益效果為:精準(zhǔn)實(shí)現(xiàn)了ota升級(jí)與e-call互斥的場(chǎng)景構(gòu)建,提高了測(cè)試效率,節(jié)省了人力資源。
3、第一方面,本發(fā)明提供了一種ota升級(jí)與e-call互斥的自動(dòng)化測(cè)試方法,包括以下步驟:
4、檢測(cè)目標(biāo)車(chē)輛是否完成ota升級(jí)包的下載;
5、響應(yīng)于檢測(cè)到目標(biāo)車(chē)輛完成ota升級(jí)包的下載,控制預(yù)設(shè)繼電器動(dòng)作,以控制目標(biāo)車(chē)輛的e-call被觸發(fā);
6、檢測(cè)目標(biāo)車(chē)輛是否有e-call信號(hào)發(fā)出;
7、響應(yīng)于檢測(cè)到目標(biāo)車(chē)輛有e-call信號(hào)發(fā)出,檢測(cè)目標(biāo)車(chē)輛是否滿足ota升級(jí)的預(yù)設(shè)條件,獲得檢測(cè)結(jié)果;
8、基于所述檢測(cè)結(jié)果確定ota升級(jí)與e-call互斥的測(cè)試結(jié)果。
9、進(jìn)一步的,所述控制預(yù)設(shè)繼電器動(dòng)作,以控制目標(biāo)車(chē)輛的e-call被觸發(fā),包括:
10、通過(guò)第一預(yù)設(shè)接口,控制所述預(yù)設(shè)繼電器閉合第一時(shí)長(zhǎng),以使目標(biāo)車(chē)輛的e-call通電。
11、進(jìn)一步的,所述檢測(cè)目標(biāo)車(chē)輛是否有e-call信號(hào)發(fā)出,包括:
12、基于python腳本創(chuàng)建預(yù)設(shè)子線程,以通過(guò)python的第三方庫(kù)python-can實(shí)時(shí)監(jiān)控所述目標(biāo)車(chē)輛的can報(bào)文,并解析所述can報(bào)文,獲得can報(bào)文的解析結(jié)果;
13、若所述解析結(jié)果中包括e-call信號(hào),則確定所述目標(biāo)車(chē)輛有e-call信號(hào)發(fā)出,并關(guān)閉所述預(yù)設(shè)子線程。
14、進(jìn)一步的,還包括:
15、響應(yīng)于未檢測(cè)到目標(biāo)車(chē)輛有e-call信號(hào)發(fā)出,則返回執(zhí)行所述控制預(yù)設(shè)繼電器動(dòng)作,以控制目標(biāo)車(chē)輛的e-call被觸發(fā)的操作。
16、進(jìn)一步的,所述檢測(cè)結(jié)果包括:滿足ota升級(jí)的預(yù)設(shè)條件,或者不滿足ota升級(jí)的預(yù)設(shè)條件;
17、所述基于所述檢測(cè)結(jié)果確定ota升級(jí)與e-call互斥的測(cè)試結(jié)果,包括:
18、響應(yīng)于所述檢測(cè)結(jié)果為不滿足ota升級(jí)的預(yù)設(shè)條件,確定關(guān)聯(lián)的錯(cuò)誤信息是否為預(yù)設(shè)信息,如果是,則確定測(cè)試結(jié)果為成功,否則,確定測(cè)試結(jié)果為失?。?/p>
19、響應(yīng)于所述檢測(cè)結(jié)果為滿足ota升級(jí)的預(yù)設(shè)條件,則在檢測(cè)到ota升級(jí)完成時(shí)確定測(cè)試結(jié)果為失敗。
20、進(jìn)一步的,所述檢測(cè)目標(biāo)車(chē)輛是否完成ota升級(jí)包的下載之前,還包括:
21、通過(guò)python的requests模塊登錄ota云平臺(tái),根據(jù)用例中的測(cè)試信息,創(chuàng)建靜默升級(jí)任務(wù),以及根據(jù)所創(chuàng)建的靜默升級(jí)任務(wù)對(duì)應(yīng)的通用唯一識(shí)別碼,將ota升級(jí)包下發(fā)到所述目標(biāo)車(chē)輛;
22、所述基于所述檢測(cè)結(jié)果確定ota升級(jí)與e-call互斥的測(cè)試結(jié)果之后,還包括:
23、取消所述靜默升級(jí)任務(wù),并輸出所述測(cè)試結(jié)果。
24、進(jìn)一步的,所述檢測(cè)目標(biāo)車(chē)輛是否完成ota升級(jí)包的下載,包括:
25、調(diào)用查詢車(chē)輛狀態(tài)接口;
26、根據(jù)所述查詢車(chē)輛狀態(tài)接口的返回值確定所述目標(biāo)車(chē)輛是否完成ota升級(jí)包的下載。
27、第二方面,本發(fā)明還提供了一種ota升級(jí)與e-call互斥的自動(dòng)化測(cè)試裝置,包括:
28、第一檢測(cè)模塊,用于檢測(cè)目標(biāo)車(chē)輛是否完成ota升級(jí)包的下載;
29、控制模塊,用于響應(yīng)于檢測(cè)到目標(biāo)車(chē)輛完成ota升級(jí)包的下載,控制預(yù)設(shè)繼電器動(dòng)作,以控制目標(biāo)車(chē)輛的e-call被觸發(fā);
30、第二檢測(cè)模塊,用于檢測(cè)目標(biāo)車(chē)輛是否有e-call信號(hào)發(fā)出;
31、第三檢測(cè)模塊,用于響應(yīng)于檢測(cè)到目標(biāo)車(chē)輛有e-call信號(hào)發(fā)出,檢測(cè)目標(biāo)車(chē)輛是否滿足ota升級(jí)的預(yù)設(shè)條件,獲得檢測(cè)結(jié)果;
32、確定模塊,用于基于所述檢測(cè)結(jié)果確定ota升級(jí)與e-call互斥的測(cè)試結(jié)果。
33、第三方面,本發(fā)明還提供一種電子設(shè)備,所述電子設(shè)備包括:
34、一個(gè)或多個(gè)處理器;
35、存儲(chǔ)裝置,用于存儲(chǔ)一個(gè)或多個(gè)程序;
36、當(dāng)所述一個(gè)或多個(gè)程序被所述一個(gè)或多個(gè)處理器執(zhí)行,使得所述一個(gè)或多個(gè)處理器實(shí)現(xiàn)如上所述的ota升級(jí)與e-call互斥的自動(dòng)化測(cè)試方法。
37、第四方面,本發(fā)明還提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,該程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如上所述的ota升級(jí)與e-call互斥的自動(dòng)化測(cè)試方法。
38、本發(fā)明公開(kāi)的ota升級(jí)與e-call互斥的自動(dòng)化測(cè)試方法,通過(guò)檢測(cè)目標(biāo)車(chē)輛是否完成ota升級(jí)包的下載;響應(yīng)于檢測(cè)到目標(biāo)車(chē)輛完成ota升級(jí)包的下載,控制預(yù)設(shè)繼電器動(dòng)作,以控制目標(biāo)車(chē)輛的e-call被觸發(fā);檢測(cè)目標(biāo)車(chē)輛是否有e-call信號(hào)發(fā)出;響應(yīng)于檢測(cè)到目標(biāo)車(chē)輛有e-call信號(hào)發(fā)出,檢測(cè)目標(biāo)車(chē)輛是否滿足ota升級(jí)的預(yù)設(shè)條件,獲得檢測(cè)結(jié)果;基于所述檢測(cè)結(jié)果確定ota升級(jí)與e-call互斥的測(cè)試結(jié)果的技術(shù)手段,精準(zhǔn)實(shí)現(xiàn)了ota升級(jí)與e-call互斥的場(chǎng)景構(gòu)建,提高了測(cè)試效率,節(jié)省了人力資源。通過(guò)持續(xù)監(jiān)控車(chē)輛升級(jí)狀態(tài),在測(cè)試不通過(guò)時(shí)等待ota升級(jí)完成再撤銷(xiāo)云端任務(wù),恢復(fù)車(chē)輛環(huán)境,不影響后續(xù)其它測(cè)試腳本的執(zhí)行。全流程都是通過(guò)測(cè)試腳本自動(dòng)執(zhí)行,因此測(cè)試時(shí)間可以放在晚上或者周末,可以釋放出人力和測(cè)試資源,提升項(xiàng)目質(zhì)量,節(jié)省項(xiàng)目成本,避免人工測(cè)試無(wú)法精準(zhǔn)快速構(gòu)建測(cè)試場(chǎng)景導(dǎo)致測(cè)試失敗的情況。使用繼電器模擬e-call開(kāi)關(guān),通過(guò)控制繼電器開(kāi)關(guān)閉合,達(dá)到觸發(fā)e-call的效果。通過(guò)子線程實(shí)時(shí)監(jiān)控車(chē)輛內(nèi)can報(bào)文,實(shí)時(shí)解析can報(bào)文,判斷e-call是否成功觸發(fā),并且不與主線程沖突。自動(dòng)判斷測(cè)試結(jié)果,測(cè)試全過(guò)程記錄,自動(dòng)生成并輸出測(cè)試用例執(zhí)行記錄、執(zhí)行結(jié)果,便于分析。