應(yīng)用程序測(cè)試方法、裝置及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,尤其涉及一種應(yīng)用程序測(cè)試方法、裝置及系統(tǒng)。
【背景技術(shù)】
[0002]目前,Android手機(jī)或者設(shè)備的應(yīng)用程序的覆蓋安裝基本是通過手動(dòng)或簡(jiǎn)單的自動(dòng)化進(jìn)行安裝:先安裝舊版本的應(yīng)用程序,然后再安裝新版本的應(yīng)用程序,最后啟動(dòng)新版本應(yīng)用程序來測(cè)試其是否正常運(yùn)行。
[0003]現(xiàn)有的這種應(yīng)用程序的覆蓋安裝,由于無法對(duì)舊版本應(yīng)用程序產(chǎn)生的用戶數(shù)據(jù)(例如登錄信息,歷史記錄等等)進(jìn)行模擬或者生成,因此造成應(yīng)用程序的覆蓋安裝測(cè)試不能產(chǎn)生很好的測(cè)試效果。
【發(fā)明內(nèi)容】
[0004]本發(fā)明實(shí)施例提供一種應(yīng)用程序測(cè)試方法、裝置及系統(tǒng),旨在提高應(yīng)用程序覆蓋測(cè)試安裝的測(cè)試效果和測(cè)試效率。
[0005]本發(fā)明實(shí)施例提出一種應(yīng)用程序測(cè)試方法,包括:
[0006]將在先版本應(yīng)用程序安裝到至少一被測(cè)終端上;
[0007]在所述被測(cè)終端上生成在先版本應(yīng)用程序的用戶數(shù)據(jù);
[0008]以保留所述在先版本應(yīng)用程序的用戶數(shù)據(jù)的方式,在所述被測(cè)終端上安裝在后版本應(yīng)用程序;
[0009]運(yùn)行所述在后版本應(yīng)用程序,根據(jù)運(yùn)行結(jié)果生成測(cè)試報(bào)告。
[0010]本發(fā)明實(shí)施例還提出一種應(yīng)用程序測(cè)試裝置,包括:
[0011]第一安裝模塊,用于將在先版本應(yīng)用程序安裝到至少一被測(cè)終端上;
[0012]用戶數(shù)據(jù)生成模塊,用于在所述被測(cè)終端上生成在先版本應(yīng)用程序的用戶數(shù)據(jù);
[0013]第二安裝模塊,用于以保留所述在先版本應(yīng)用程序的用戶數(shù)據(jù)的方式,在所述被測(cè)終端上安裝在后版本應(yīng)用程序;
[0014]運(yùn)行測(cè)試模塊,用于運(yùn)行所述在后版本應(yīng)用程序,根據(jù)運(yùn)行結(jié)果生成測(cè)試報(bào)告。
[0015]本發(fā)明實(shí)施例還提出一種應(yīng)用程序測(cè)試系統(tǒng),包括:測(cè)試終端以及與所述測(cè)試終端通信連接的至少一被測(cè)終端;其中:
[0016]所述測(cè)試終端包括如上所述的裝置;
[0017]所述被測(cè)終端,用于由所述測(cè)試終端控制,安裝在先版本應(yīng)用程序,生成在先版本應(yīng)用程序的用戶數(shù)據(jù),以保留所述在先版本應(yīng)用程序的用戶數(shù)據(jù)的方式,安裝在后版本應(yīng)用程序;以及運(yùn)行所述在后版本應(yīng)用程序,對(duì)該在后版本應(yīng)用程序進(jìn)行測(cè)試。
[0018]本發(fā)明實(shí)施例提出的一種應(yīng)用程序測(cè)試方法、裝置及系統(tǒng),通過將在先版本應(yīng)用程序安裝到至少一被測(cè)終端上;在被測(cè)終端上很好的生成在先版本應(yīng)用程序的用戶數(shù)據(jù);以保留在先版本應(yīng)用程序的用戶數(shù)據(jù)的方式,在被測(cè)終端上覆蓋安裝在后版本應(yīng)用程序;最后自動(dòng)化運(yùn)行在后版本應(yīng)用程序,判斷運(yùn)行結(jié)果是否正常,根據(jù)運(yùn)行結(jié)果生成測(cè)試報(bào)告,不僅可以實(shí)現(xiàn)應(yīng)用程序覆蓋安裝測(cè)試的自動(dòng)化,節(jié)省人力,提高測(cè)試效率,同時(shí)可以生成不同用戶場(chǎng)景的用戶數(shù)據(jù),然后覆蓋安裝,提高了測(cè)試效果;此外,還可以將覆蓋安裝測(cè)試擴(kuò)展到多臺(tái)終端運(yùn)行,提高機(jī)型適配性能。
【附圖說明】
[0019]圖1是本發(fā)明應(yīng)用程序測(cè)試方法較佳實(shí)施例的流程示意圖;
[0020]圖2是本發(fā)明應(yīng)用程序測(cè)試裝置較佳實(shí)施例的功能模塊示意圖;
[0021]圖3是本發(fā)明應(yīng)用程序測(cè)試系統(tǒng)較佳實(shí)施例的架構(gòu)示意圖;
[0022]圖4是本發(fā)明實(shí)施例應(yīng)用程序測(cè)試系統(tǒng)中測(cè)試終端的一種結(jié)構(gòu)示意圖。
[0023]為了使本發(fā)明的技術(shù)方案更加清楚、明了,下面將結(jié)合附圖作進(jìn)一步詳述。
【具體實(shí)施方式】
[0024]應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0025]本發(fā)明實(shí)施例的主要解決方案是:通過將在先版本應(yīng)用程序安裝到至少一被測(cè)終端上;在被測(cè)終端上很好的生成在先版本應(yīng)用程序的用戶數(shù)據(jù);以保留在先版本應(yīng)用程序的用戶數(shù)據(jù)的方式,在被測(cè)終端上覆蓋安裝在后版本應(yīng)用程序;最后自動(dòng)化運(yùn)行在后版本應(yīng)用程序,判斷運(yùn)行結(jié)果是否正常,根據(jù)運(yùn)行結(jié)果生成測(cè)試報(bào)告,實(shí)現(xiàn)應(yīng)用程序覆蓋安裝測(cè)試的自動(dòng)化,節(jié)省人力,提高測(cè)試效率,同時(shí)可以生成不同用戶場(chǎng)景的用戶數(shù)據(jù),然后覆蓋安裝,提高測(cè)試效果;此外,還可以將覆蓋安裝測(cè)試擴(kuò)展到多臺(tái)終端運(yùn)行,提高機(jī)型適配性倉泛。
[0026]如圖1所示,本發(fā)明較佳實(shí)施例提出一種應(yīng)用程序測(cè)試方法,包括:
[0027]步驟S101,將在先版本應(yīng)用程序安裝到至少一被測(cè)終端上;
[0028]本實(shí)施例方法運(yùn)行環(huán)境涉及測(cè)試終端、一個(gè)或多個(gè)被測(cè)終端,其中,測(cè)試終端可以為PC機(jī)或者其他服務(wù)器,被測(cè)終端為需要安裝應(yīng)用程序并需要對(duì)應(yīng)用程序進(jìn)行測(cè)試的手機(jī)、平板電腦等移動(dòng)終端,該移動(dòng)終端可以為Andr1d操作系統(tǒng)或其他操作系統(tǒng)的移動(dòng)終端。
[0029]以測(cè)試終端為PC機(jī),被測(cè)終端為手機(jī)進(jìn)行舉例,其中,應(yīng)用程序的覆蓋安裝是指手機(jī)上已經(jīng)安裝在先版本的應(yīng)用程序,從網(wǎng)絡(luò)下載或者通過數(shù)據(jù)線拷貝在后版本的應(yīng)用程序到手機(jī),然后在手機(jī)上安裝在后版本應(yīng)用程序,其中,在先版本應(yīng)用程序是指先開發(fā)的應(yīng)用程序,即舊版本應(yīng)用程序,在后版本應(yīng)用程序是指后開發(fā)的應(yīng)用程序,即新版本應(yīng)用程序,在后版本應(yīng)用程序的發(fā)布時(shí)間晚于在先版本應(yīng)用程序。
[0030]由于現(xiàn)有的應(yīng)用程序的覆蓋安裝,無法對(duì)舊版本應(yīng)用程序產(chǎn)生的用戶數(shù)據(jù)(例如登錄信息,歷史記錄等等)進(jìn)行模擬或者生成,因此造成應(yīng)用程序的覆蓋安裝測(cè)試不能產(chǎn)生很好的測(cè)試效果,本實(shí)施例可以通過PC機(jī)實(shí)現(xiàn)對(duì)一個(gè)或多個(gè)手機(jī)上的應(yīng)用程序進(jìn)行覆蓋安裝,并會(huì)保留舊版本應(yīng)用程序的數(shù)據(jù),這樣用戶很多信息能夠得到保留,并可提高測(cè)試效率和測(cè)試效果。
[0031]具體地,在本實(shí)施例中,本實(shí)施例的應(yīng)用程序測(cè)試方案是在PC上(Windows/Mac/Linux)來運(yùn)行的。
[0032]首先將相關(guān)手機(jī)(可以有多臺(tái))連接到PC,其中,手機(jī)與PC的連接可以采用USB數(shù)據(jù)線等有線連接方式連接,也可以通過wifi等無線方式連接。
[0033]然后,在PC上,通過腳本(可以是Python或者Java等等)將在先版本應(yīng)用程序推送并安裝到已連接到PC的一個(gè)或多個(gè)手機(jī)上。
[0034]步驟S102,在所述被測(cè)終端上生成在先版本應(yīng)用程序的用戶數(shù)據(jù);
[0035]其中,用戶數(shù)據(jù)是指用戶在使用應(yīng)用程序過程中生成的數(shù)據(jù),例如使用手機(jī)QQ后,登錄后會(huì)有相關(guān)登錄信息,以及好友信息等。一般這些信息都會(huì)存儲(chǔ)在目錄data/data/Apps (應(yīng)用名稱)下面。
[0036]在被測(cè)終端上生成在先版本應(yīng)用程序的用戶數(shù)據(jù)之后再安裝在后版本應(yīng)用程序,然后運(yùn)行檢查在后版本的應(yīng)用程序是否正常的腳本,如果腳本運(yùn)行通過,那么覆蓋安裝通過;如果腳本運(yùn)行失敗,那么覆蓋安裝失敗。
[0037]其中,在被測(cè)終端上生成在先版本應(yīng)用程序的用戶數(shù)據(jù)具體可以采用以下三種方案:
[0038]第一種方案:在被測(cè)終端上運(yùn)行預(yù)先生成的隨機(jī)按鍵腳本,比如MTTF腳本,由此來生成在先版本應(yīng)用程序的用戶數(shù)據(jù)。所述隨機(jī)按鍵腳本包括模擬用戶在被測(cè)手機(jī)上隨機(jī)任意點(diǎn)擊、雙擊、滑動(dòng)和/或長(zhǎng)按所生成的腳本。
[0039]運(yùn)行隨機(jī)按鍵腳本,可以生成在先版本應(yīng)用程序的用戶數(shù)據(jù),其隨機(jī)性比較大。對(duì)于MTTF腳本,則可以使用Andr1d自帶的monkey工具來生成,也可以由開發(fā)人員編寫隨機(jī)按鍵的腳本。
[0040]第二種方案:對(duì)在先版本應(yīng)用程序日常測(cè)試過程中生成的用戶數(shù)據(jù)進(jìn)行備份,將得到的備份數(shù)據(jù)發(fā)送至被測(cè)手機(jī)。
[0041]比如,將在先版本應(yīng)用程序日常測(cè)試過程中生成的用戶數(shù)據(jù)進(jìn)行備份,然后再發(fā)送到被測(cè)手機(jī)某個(gè)目錄下(不同應(yīng)用存儲(chǔ)用戶數(shù)據(jù)的位置可能不一樣,一般都存儲(chǔ)在路徑data/data/App (應(yīng)用程序名稱)下)。
[0042]通常情況下,對(duì)于在先版本應(yīng)用程序,會(huì)做一些手動(dòng)測(cè)試,這樣就會(huì)生成用戶數(shù)據(jù),把這樣的用戶數(shù)據(jù)備份出來(可以直接從應(yīng)用程序目錄下面拷貝),即可得到備份數(shù)據(jù)。
[0043]第三種方案:在被測(cè)終端上針對(duì)用戶常用場(chǎng)景編寫自動(dòng)化腳本,運(yùn)行編寫的自動(dòng)化腳本,例如針對(duì)手機(jī)