一種獲取應(yīng)用程序的啟動時間的方法和裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及測試技術(shù)領(lǐng)域,特別是涉及一種獲取應(yīng)用程序的啟動時間的方法和一種獲取應(yīng)用程序的啟動時間的裝置。
【背景技術(shù)】
[0002]隨著應(yīng)用程序的數(shù)量和種類的不斷增多,應(yīng)用程序的啟動速度已經(jīng)成為用戶,特別是移動終端的用戶,選擇應(yīng)用程序的重要標(biāo)準(zhǔn)之一。
[0003]現(xiàn)有一種獲取應(yīng)用程序的啟動時間的過程可以為,在移動終端通過數(shù)據(jù)線連接PC(個人計(jì)算機(jī),Personal Computer)的情況下,在該P(yáng)C上運(yùn)行的安卓調(diào)試工具上通過adb (安卓調(diào)試橋,Android Debug Bridge) shell am(活動管理,ActivityManager)命令獲取應(yīng)用程序的啟動時間。
[0004]雖然上述過程能夠比較精準(zhǔn)地獲取應(yīng)用程序的啟動時間,但是,上述安卓調(diào)試工具通常僅僅能夠在PC環(huán)境中運(yùn)行,而在移動終端的環(huán)境中可能無法運(yùn)行,因此上述過程具有應(yīng)用環(huán)境受限的問題。
【發(fā)明內(nèi)容】
[0005]鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上述問題的獲取應(yīng)用程序的啟動時間的方法和相應(yīng)的獲取應(yīng)用程序的啟動時間的裝置。
[0006]依據(jù)本發(fā)明的一個方面,提供了一種獲取應(yīng)用程序的啟動時間的方法,包括:
[0007]通過調(diào)用與系統(tǒng)類同名的模擬類或者與系統(tǒng)方法同名的模擬方法,獲取操作系統(tǒng)的啟動等待方法;
[0008]在獲取操作系統(tǒng)的啟動等待方法后,啟動目標(biāo)應(yīng)用程序;
[0009]依據(jù)所述啟動等待方法的返回值,確定所述目標(biāo)應(yīng)用程序的啟動時間。
[0010]可選地,所述系統(tǒng)類包括:系統(tǒng)接口類,則所述通過調(diào)用與系統(tǒng)類同名的模擬類或者與系統(tǒng)方法同名的模擬方法,獲取操作系統(tǒng)的啟動等待方法的步驟,包括:
[0011]通過調(diào)用與所述系統(tǒng)接口類同名的模擬類,獲取所述系統(tǒng)接口類的實(shí)例;
[0012]通過反射調(diào)用所述系統(tǒng)接口類的實(shí)例,獲取操作系統(tǒng)的所述系統(tǒng)接口類中的啟動等待方法。
[0013]可選地,所述系統(tǒng)類包括:系統(tǒng)原生類,則所述通過調(diào)用與系統(tǒng)類同名的模擬類或者與系統(tǒng)方法同名的模擬方法,獲取操作系統(tǒng)的啟動等待方法的步驟,包括:
[0014]通過調(diào)用與所述系統(tǒng)原生類同名的模擬類,獲取所述原生類中系統(tǒng)接口類的實(shí)例;
[0015]通過反射調(diào)用所述系統(tǒng)接口類的實(shí)例,獲取操作系統(tǒng)的所述系統(tǒng)接口類中的啟動等待方法。
[0016]可選地,所述系統(tǒng)方法包括:啟動等待方法,則所述通過調(diào)用與系統(tǒng)類同名的類或者與系統(tǒng)方法同名的模擬方法,獲取操作系統(tǒng)的啟動等待方法的步驟,包括:
[0017]通過調(diào)用與所述啟動等待方法同名的模擬方法,獲取操作系統(tǒng)的啟動等待方法。
[0018]可選地,所述依據(jù)所述啟動等待方法的返回值,確定所述目標(biāo)應(yīng)用程序的啟動時間的步驟,包括:
[0019]通過反射調(diào)用所述啟動等待方法,獲得所述啟動等待方法的本次啟動的等待結(jié)果參數(shù)的返回值;其中,所述反射調(diào)用的參數(shù)包括:系統(tǒng)接口類的實(shí)例和所述本次啟動的等待結(jié)果參數(shù);
[0020]將所述返回值確定為所述目標(biāo)應(yīng)用程序的啟動時間。
[0021]可選地,所述啟動目標(biāo)應(yīng)用程序的步驟,包括:
[0022]獲取所述目標(biāo)應(yīng)用程序的包名和類名;
[0023]依據(jù)所述目標(biāo)應(yīng)用程序的包名和類名,啟動所述目標(biāo)應(yīng)用程序。
[0024]根據(jù)本發(fā)明的另一方面,提供了一種獲取應(yīng)用程序的啟動時間的裝置,包括:
[0025]獲取模塊,用于通過調(diào)用與系統(tǒng)類同名的模擬類或者與系統(tǒng)方法同名的模擬方法,獲取操作系統(tǒng)的啟動等待方法;
[0026]程序啟動模塊,用于在獲取操作系統(tǒng)的啟動等待方法后,啟動目標(biāo)應(yīng)用程序;及
[0027]確定模塊,用于依據(jù)所述啟動等待方法的返回值,確定所述目標(biāo)應(yīng)用程序的啟動時間。
[0028]可選地,所述系統(tǒng)類包括:系統(tǒng)接口類,則所述獲取模塊,包括:
[0029]第一獲取子模塊,用于通過調(diào)用與所述系統(tǒng)接口類同名的模擬類,獲取所述系統(tǒng)接口類的實(shí)例;及
[0030]第二獲取子模塊,用于通過反射調(diào)用所述系統(tǒng)接口類的實(shí)例,獲取操作系統(tǒng)的所述系統(tǒng)接口類中的啟動等待方法。
[0031]可選地,所述系統(tǒng)類包括:系統(tǒng)原生類,則所述獲取模塊,包括:
[0032]第三獲取子模塊,用于通過調(diào)用與所述系統(tǒng)原生類同名的模擬類,獲取所述原生類中系統(tǒng)接口類的實(shí)例;
[0033]第四獲取子模塊,用于通過反射調(diào)用所述系統(tǒng)接口類的實(shí)例,獲取操作系統(tǒng)的所述系統(tǒng)接口類中的啟動等待方法。
[0034]可選地,所述系統(tǒng)方法包括:啟動等待方法,則所述獲取模塊,包括:
[0035]第五獲取子模塊,用于通過調(diào)用與所述啟動等待方法同名的模擬方法,獲取操作系統(tǒng)的啟動等待方法。
[0036]可選地,所述確定模塊,包括:
[0037]返回值獲取子模塊,用于通過反射調(diào)用所述啟動等待方法,獲得所述啟動等待方法的本次啟動的等待結(jié)果參數(shù)的返回值;其中,所述反射調(diào)用的參數(shù)包括:系統(tǒng)接口類的實(shí)例和所述本次啟動的等待結(jié)果參數(shù);及
[0038]啟動時間確定子模塊,用于將所述返回值確定為所述目標(biāo)應(yīng)用程序的啟動時間。
[0039]可選地,所述程序啟動模塊,包括:
[0040]第六獲取子模塊,用于獲取所述目標(biāo)應(yīng)用程序的包名和類名;及
[0041]啟動子模塊,用于依據(jù)所述目標(biāo)應(yīng)用程序的包名和類名,啟動所述目標(biāo)應(yīng)用程序。
[0042]根據(jù)本發(fā)明的獲取應(yīng)用程序的啟動時間的方法和裝置,可以依據(jù)啟動等待方法的返回值,確定所述目標(biāo)應(yīng)用程序的啟動時間;由于本發(fā)明實(shí)施例可以利用操作系統(tǒng)的啟動等待方法獲取該操作系統(tǒng)中目標(biāo)應(yīng)用程序的啟動時間,故本發(fā)明實(shí)施例可以在目標(biāo)應(yīng)用程序的操作系統(tǒng)環(huán)境中運(yùn)行,例如,目標(biāo)應(yīng)用程序的操作系統(tǒng)環(huán)境為手機(jī)的安卓操作系統(tǒng),則本發(fā)明實(shí)施例的上述步驟流程也可以在手機(jī)的安卓操作系統(tǒng)中運(yùn)行,因此,相對于現(xiàn)有方案僅僅能夠在PC上運(yùn)行,本發(fā)明實(shí)施例能夠擴(kuò)展獲取應(yīng)用程序所需的應(yīng)用環(huán)境。
[0043]另外,本發(fā)明實(shí)施例的上述步驟流程可以應(yīng)用于不同于上述目標(biāo)應(yīng)用程序的測試應(yīng)用程序中,這使得可以通過該測試應(yīng)用程序的UI快速啟動上述目標(biāo)應(yīng)用程序并快速獲取上述目標(biāo)應(yīng)用程序的啟動時間,因此,相對于現(xiàn)有方案在借助于數(shù)據(jù)線的情況下在PC上通過安卓調(diào)試工具獲取應(yīng)用程序的啟動時間,本發(fā)明實(shí)施例還能夠提高上述目標(biāo)應(yīng)用程序的啟動時間的獲取速度。
[0044]上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段,而可依照說明書的內(nèi)容予以實(shí)施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點(diǎn)能夠更明顯易懂,以下特舉本發(fā)明的【具體實(shí)施方式】。
【附圖說明】
[0045]通過閱讀下文優(yōu)選實(shí)施方式的詳細(xì)描述,各種其他的優(yōu)點(diǎn)和益處對于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實(shí)施方式的目的,而并不認(rèn)為是對本發(fā)明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
[0046]圖1示出了根據(jù)本發(fā)明一個實(shí)施例的一種獲取應(yīng)用程序的啟動時間的方法實(shí)施例的步驟流程圖;以及
[0047]圖2示出了根據(jù)本發(fā)明一個實(shí)施例的一種獲取應(yīng)用程序的啟動時間的裝置實(shí)施例的結(jié)構(gòu)框圖。
【具體實(shí)施方式】
[0048]下面將參照附圖更詳細(xì)地描述本公開的示例性實(shí)施例。雖然附圖中顯示了本公開的示例性實(shí)施例,然而應(yīng)當(dāng)理解,可以以各種形式實(shí)現(xiàn)本公開而不應(yīng)被這里闡述的實(shí)施例所限制。相反,提供這些實(shí)施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。
[0049]參照圖1,示出了根據(jù)本發(fā)明一個實(shí)施例的一種獲取應(yīng)用程序的啟動時間的方法實(shí)施例的步驟流程圖,具體可以包括如下步驟:
[0050]步驟101、通過調(diào)用與系統(tǒng)類同名的模擬類或者與系統(tǒng)方法同名的模擬方法,獲取操作系統(tǒng)的啟動等待方法;
[0051]本發(fā)明實(shí)施例可以應(yīng)用于具有測試功能的測試應(yīng)用程序中,從而可以實(shí)現(xiàn)該測試應(yīng)用程序開啟目標(biāo)應(yīng)用程序并獲取該目標(biāo)應(yīng)用程序的啟動時間;其中,該測試應(yīng)用程序的運(yùn)行環(huán)境可以與該目標(biāo)應(yīng)用程序的運(yùn)行環(huán)境可以相同,例如,該測試應(yīng)用程序和該目標(biāo)應(yīng)用程序可以同運(yùn)行于移動終端的操作系統(tǒng)中,因此,相對于現(xiàn)有方案僅僅能夠在PC上運(yùn)行,本發(fā)明實(shí)施例能夠擴(kuò)展獲取應(yīng)用程序的應(yīng)用環(huán)境。
[0052]在實(shí)際應(yīng)用中,該測試應(yīng)用程序可以預(yù)先創(chuàng)建與系統(tǒng)類同名的模擬類或者與系統(tǒng)方法同名的模擬方法。在具體實(shí)現(xiàn)中,上述模擬類和上述模擬方法可以為空的類和方法,其返回值可以為空,或者,可以沒有返回值,