用于自動化測試軟件的方法及設(shè)備的制造方法
【技術(shù)領(lǐng)域】
[0001]本公開的各實施方式總體上涉及一種用于自動化測試軟件的方法及設(shè)備。
【背景技術(shù)】
[0002]智能設(shè)備的普及和移動互聯(lián)網(wǎng)的發(fā)展,給人們的出行帶來了極大便利。當(dāng)前基于智能設(shè)備應(yīng)用的車輛呼叫業(yè)務(wù)已經(jīng)為社會各階層人士乘坐車輛出行提供了便捷高效的服務(wù)。各類打車軟件基本解決了司機和乘客之間的信息不對稱問題,提高了車輛的運力,也方便了乘客的出行。
[0003]隨著使用打車軟件的用戶越來越多,達(dá)到億萬級別,用戶在出行領(lǐng)域的需求也越來越多。為了滿足業(yè)務(wù)場景日益增長的需求,打車軟件系統(tǒng)中的訂單分配的數(shù)據(jù)接口所攜帶的信息量也快速增加,并且隨著打車系統(tǒng)中的訂單分配系統(tǒng)的升級,業(yè)務(wù)功能升級后跟上一個版本對比可能會存在較大的差異,缺少一種自動化的測試手段來覆蓋訂單分配的所有業(yè)務(wù)場景。
[0004]訂單分配系統(tǒng)業(yè)務(wù)場景復(fù)雜,傳統(tǒng)的測試方法依賴于手工方式驗證,僅進(jìn)行常規(guī)的功能驗證,經(jīng)常出現(xiàn)的問題包括:效率低下;新增的業(yè)務(wù)可能會影響老功能的正常運行,而傳統(tǒng)驗證方式無法全面覆蓋到所有功能;能夠處理的數(shù)據(jù)量小,無法做到業(yè)務(wù)場景全覆蓋;無法估量新增業(yè)務(wù)功能對性能、資源造成的影響;無法覆蓋異常類測試數(shù)據(jù)等;容易導(dǎo)致漏測。以上各種問題,均可能帶來重大損失。需要一種自動化的驗證方法,準(zhǔn)確高效地完成業(yè)務(wù)場景的驗證工作。不僅是打車系統(tǒng),針對其他領(lǐng)域的軟件也需要一種自動化的測試方法及設(shè)備,能夠適應(yīng)不斷的系統(tǒng)更新以及完成相應(yīng)的測試任務(wù)。
[0005]需要一種能夠進(jìn)行批量數(shù)據(jù)測試、覆蓋所有業(yè)務(wù)場景并能夠評估業(yè)務(wù)升級帶來的功能差異和影響的軟件測試方法。
【發(fā)明內(nèi)容】
[0006]有鑒于此,本公開的各實施方式提出了一種用于自動化測試軟件的方法及設(shè)備,并且更具體地,涉及一種用于自動化測試打車系統(tǒng)訂單分配軟件的方法及設(shè)備,使得能夠進(jìn)行批量數(shù)據(jù)測試、覆蓋所有業(yè)務(wù)場景并能夠評估業(yè)務(wù)升級帶來的功能差異和影響。
[0007]根據(jù)本公開的第一方面,提供了一種測試軟件的方法,包括:監(jiān)視軟件的代碼,當(dāng)所述代碼改變時,生成與所述代碼相關(guān)的版本標(biāo)識,以及對所述代碼進(jìn)行測試。
[0008]根據(jù)本公開的一個實施例,其中對所述代碼進(jìn)行測試包括:將與所述版本標(biāo)識相關(guān)的代碼和與先前版本標(biāo)識相關(guān)的代碼進(jìn)行比較。
[0009]根據(jù)本公開的一個實施例,其中對所述代碼進(jìn)行測試還包括:生成與所述版本標(biāo)識相關(guān)的代碼和與先前版本標(biāo)識相關(guān)的代碼之間的差異。
[0010]根據(jù)本公開的一個實施例,其中對所述代碼進(jìn)行測試包括:對所述代碼部署測試環(huán)境。
[0011]根據(jù)本公開的一個實施例,其中對所述代碼部署測試環(huán)境包括:輸入數(shù)據(jù)源,以及部署與所述版本標(biāo)識相關(guān)的測試環(huán)境。
[0012]根據(jù)本公開的一個實施例,其中對所述代碼部署測試環(huán)境還包括:當(dāng)部署所述測試環(huán)境成功時,生成成功信息,和/或當(dāng)部署所述測試環(huán)境失敗時,生成失敗信息。
[0013]根據(jù)本公開的一個實施例,其中對所述代碼進(jìn)行測試還包括:對所述代碼進(jìn)行功能對比測試。
[0014]根據(jù)本公開的一個實施例,其中對所述代碼進(jìn)行功能對比測試包括:執(zhí)行與所述版本標(biāo)識相關(guān)的代碼,以及生成與所述版本標(biāo)識相關(guān)的代碼執(zhí)行結(jié)果。
[0015]根據(jù)本公開的一個實施例,其中對所述代碼進(jìn)行功能對比測試還包括:將與所述版本標(biāo)識相關(guān)的代碼執(zhí)行結(jié)果和與先前版本標(biāo)識相關(guān)的代碼執(zhí)行結(jié)果進(jìn)行比較,以及生成與所述版本標(biāo)識相關(guān)的代碼執(zhí)行結(jié)果和與先前版本標(biāo)識相關(guān)的代碼執(zhí)行結(jié)果之間的差異。
[0016]根據(jù)本公開的一個實施例,其中對所述代碼進(jìn)行功能對比測試還包括:將所述差異與預(yù)定的執(zhí)行結(jié)果閾值進(jìn)行比較,以及當(dāng)所述差異超出所述執(zhí)行結(jié)果閾值時,生成報警消息。
[0017]根據(jù)本公開的一個實施例,其中對所述代碼進(jìn)行測試包括:對所述代碼進(jìn)行性能對比測試。
[0018]根據(jù)本公開的一個實施例,其中對所述代碼進(jìn)行性能對比測試包括:輸入性能測試數(shù)據(jù),以及在預(yù)定的第一時間內(nèi),執(zhí)行與所述版本標(biāo)識相關(guān)的代碼,并且生成與所述版本標(biāo)識相關(guān)的性能評價數(shù)據(jù)。
[0019]根據(jù)本公開的一個實施例,其中對所述代碼進(jìn)行性能對比測試還包括:將與所述版本標(biāo)識相關(guān)的所述性能評價數(shù)據(jù)和與先前版本標(biāo)識相關(guān)的性能評價數(shù)據(jù)進(jìn)行比較,以及生成與所述版本標(biāo)識相關(guān)的性能評價數(shù)據(jù)和與先前版本標(biāo)識相關(guān)的性能評價數(shù)據(jù)之間的差異。
[0020]根據(jù)本公開的一個實施例,其中對所述代碼進(jìn)行性能對比測試還包括:將所述差異與預(yù)定的性能評價閾值進(jìn)行比較,并且當(dāng)所述差異超過所述性能評價閾值時,生成報警消息。
[0021]根據(jù)本公開的一個實施例,其中,所述性能測試數(shù)據(jù)的數(shù)據(jù)量大于所述數(shù)據(jù)源的數(shù)據(jù)量;和/或所述性能評價數(shù)據(jù)至少包括以下一項或多項:策略計算時間、CPU相關(guān)指標(biāo)和內(nèi)存相關(guān)指標(biāo)。
[0022]根據(jù)本公開的一個實施例,其中對所述代碼進(jìn)行測試還包括:對所述代碼進(jìn)行壓力對比測試。
[0023]根據(jù)本公開的一個實施例,其中對所述代碼進(jìn)行壓力對比測試包括:輸入壓力測試數(shù)據(jù),以及在預(yù)定的第二時間內(nèi),執(zhí)行與所述版本標(biāo)識相關(guān)的代碼,并且生成與所述版本標(biāo)識相關(guān)的壓力評價數(shù)據(jù)。
[0024]根據(jù)本公開的一個實施例,其中對所述代碼進(jìn)行壓力對比測試還包括:將與所述版本標(biāo)識相關(guān)的壓力評價數(shù)據(jù)和與先前版本標(biāo)識相關(guān)的壓力評價數(shù)據(jù)進(jìn)行比較,以及生成與所述版本標(biāo)識相關(guān)的所述壓力評價數(shù)據(jù)和與先前版本標(biāo)識相關(guān)的壓力評價數(shù)據(jù)的差異。
[0025]根據(jù)本公開的一個實施例,其中對所述代碼進(jìn)行壓力對比測試還包括:將所述差異與預(yù)定的壓力評價閾值進(jìn)行比較,以及當(dāng)所述差異超過所述壓力評價閾值時,生成報警消息。
[0026]根據(jù)本公開的一個實施例,其中所述壓力測試數(shù)據(jù)中包括異常測試數(shù)據(jù),和/或所述壓力評價數(shù)據(jù)至少包括以下一項或多項:進(jìn)程數(shù)、程序運行穩(wěn)定性數(shù)據(jù)、和系統(tǒng)異常數(shù)據(jù)。
[0027]根據(jù)本公開的第二方面,公開了一種測試軟件的設(shè)備,包括:監(jiān)視裝置,被配置用于監(jiān)視軟件的代碼,版本標(biāo)識生成裝置,被配置用于當(dāng)所述代碼改變時,生成與所述代碼相關(guān)的版本標(biāo)識,以及測試裝置,被配置用于對所述代碼進(jìn)行測試。
[0028]根據(jù)本公開的一個實施例,其中所述測試裝置包括:代碼對比裝置,被配置用于將與所述版本標(biāo)識相關(guān)的代碼和與先前版本標(biāo)識相關(guān)的代碼進(jìn)行比較。
[0029]根據(jù)本公開的一個實施例,其中所述測試裝置還包括:代碼差異生成裝置,被配置用于生成與所述版本標(biāo)識相關(guān)的代碼和與先前版本標(biāo)識相關(guān)的代碼之間的差異。
[0030]根據(jù)本公開的一個實施例,其中所述測試裝置包括:測試環(huán)境部署裝置,被配置用于對所述代碼部署測試環(huán)境。
[0031]根據(jù)本公開的一個實施例,其中所述測試環(huán)境部署裝置包括:用于輸入數(shù)據(jù)源的裝置,以及用于部署與所述版本標(biāo)識相關(guān)的測試環(huán)境的裝置。
[0032]根據(jù)本公開的一個實施例,其中所述測試環(huán)境部署裝置還包括:用于當(dāng)部署所述測試環(huán)境成功時,生成成功信息的裝置,和/或用于當(dāng)部署所述測試環(huán)境失敗時,生成失敗信息的裝置。
[0033]根據(jù)本公開的一個實施例,其中所述測試裝置還包括:功能對比測試裝置,被配置用于對所述代碼進(jìn)行功能對比測試。
[0034]根據(jù)本公開的一個實施例,其中所述功能對比測試裝置包括:用于執(zhí)行與所述版本標(biāo)識相關(guān)的代碼的裝置,以及用于生成與所述版本標(biāo)識相關(guān)的代碼執(zhí)行結(jié)果的裝置。
[0035]根據(jù)本公開的一個實施例,其中所述功能對比測試裝置還包括:用于將與所述版本標(biāo)識相關(guān)的代碼執(zhí)行結(jié)果和與先前版本標(biāo)識相關(guān)的代碼執(zhí)行結(jié)果進(jìn)行比較的裝置,以及用于生成與所述版本標(biāo)識相關(guān)的代碼執(zhí)行結(jié)果和與先前版本標(biāo)識相關(guān)的代碼執(zhí)行結(jié)果之間的差異的裝置。
[0036]根據(jù)本公開的一個實施例,其中所述功能對比測試裝置還包括:用于將所述差異與預(yù)定的執(zhí)行結(jié)果閾值進(jìn)行比較的裝置,以及用于當(dāng)所述差異超出所述執(zhí)行結(jié)果閾值時,生成報警消息的裝置。
[0037]根據(jù)本公開的一個實施例,其中所述測試裝置包括:性能對比測試裝置,被配置用于對所述代碼進(jìn)行性能對比測試。