午夜毛片免费看,老师老少妇黄色网站,久久本道综合久久伊人,伊人黄片子

基于Android系統(tǒng)的自動(dòng)化測(cè)試方法及裝置的制造方法

文檔序號(hào):10512088閱讀:625來(lái)源:國(guó)知局
基于Android系統(tǒng)的自動(dòng)化測(cè)試方法及裝置的制造方法
【專利摘要】本發(fā)明公開(kāi)的基于Android系統(tǒng)的自動(dòng)化測(cè)試方法,包括:根據(jù)預(yù)先接收的測(cè)試用例生成作用于待測(cè)軟件的操作指令;按照所述操作指令對(duì)所述待測(cè)軟件執(zhí)行相應(yīng)的操作;接收所述待測(cè)軟件響應(yīng)所述操作后的輸出信息;根據(jù)所述輸出信息創(chuàng)建測(cè)試報(bào)告。本發(fā)明還公開(kāi)了一種基于Android系統(tǒng)的自動(dòng)化測(cè)試裝置。與現(xiàn)有技術(shù)相比,在Android系統(tǒng)權(quán)限限制的情況下,本發(fā)明的技術(shù)方案,能夠?qū)崿F(xiàn)軟件的自動(dòng)化測(cè)試,不僅能夠提高軟件測(cè)試的效率,而且還能夠提高測(cè)試結(jié)果的準(zhǔn)確性。
【專利說(shuō)明】
基于Andr o i d系統(tǒng)的自動(dòng)化測(cè)試方法及裝置
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及測(cè)試技術(shù)領(lǐng)域,更具體而言,涉及一種基于Android系統(tǒng)的自動(dòng)化測(cè)試方法及裝置。
【背景技術(shù)】
[0002]軟件是使用程序語(yǔ)言編制得到的操作工具,為了保證軟件正常運(yùn)行,并且保證運(yùn)行時(shí)達(dá)到預(yù)期的效果,在投入使用之前,通常對(duì)軟件的功能及性能進(jìn)行測(cè)試,以發(fā)現(xiàn)程序錯(cuò)誤,衡量軟件質(zhì)量,并對(duì)其是否能夠滿足設(shè)計(jì)要求進(jìn)行評(píng)估。鑒于軟件沒(méi)有具體的物理形態(tài),只能通過(guò)運(yùn)行狀況來(lái)了解其功能、特性和質(zhì)量,因此,通常的測(cè)試方法為通過(guò)在相應(yīng)操作系統(tǒng)基礎(chǔ)上操作軟件,檢驗(yàn)每種條件下的實(shí)際輸出結(jié)果和預(yù)期結(jié)果的差別,從而驗(yàn)證和確認(rèn)軟件的功能和性能。
[0003]具體的,在軟件編制完成后,測(cè)試人員根據(jù)軟件的功能和運(yùn)行條件設(shè)計(jì)測(cè)試用例,其中,測(cè)試用例包括測(cè)試內(nèi)容、測(cè)試條件及預(yù)期結(jié)果等信息。在完成測(cè)試用例的設(shè)計(jì)之后,基于軟件的操作系統(tǒng)搭建測(cè)試環(huán)境,并將測(cè)試用例轉(zhuǎn)換成測(cè)試腳本,通過(guò)運(yùn)行測(cè)試腳本得到實(shí)際輸出結(jié)果。對(duì)比實(shí)際輸出結(jié)果和預(yù)期結(jié)果,并整理二者的差別形成測(cè)試報(bào)告,以便于開(kāi)發(fā)人員根據(jù)測(cè)試報(bào)告的內(nèi)容修正軟件存在的問(wèn)題。
[0004]根據(jù)上述描述可知,軟件測(cè)試應(yīng)當(dāng)基于運(yùn)行軟件的操作系統(tǒng)進(jìn)行,而Android系統(tǒng)設(shè)置有嚴(yán)格的操作權(quán)限,搭建測(cè)試環(huán)境及運(yùn)行測(cè)試腳本等操作,在Android系統(tǒng)所能夠授權(quán)的權(quán)限內(nèi)根本無(wú)法運(yùn)行,因此,測(cè)試應(yīng)用于Android系統(tǒng)的軟件時(shí),僅能夠通過(guò)人工的方式將測(cè)試用例逐條在軟件上操作,并通過(guò)人工分析、整理實(shí)際輸出結(jié)果,形成測(cè)試報(bào)告,從而造成測(cè)試效率低下,而且測(cè)試結(jié)果的準(zhǔn)確性也較差。

【發(fā)明內(nèi)容】

[0005]有鑒于此,本發(fā)明實(shí)施例提供了一種基于Android系統(tǒng)的自動(dòng)化測(cè)試方法及裝置,能夠解決由于權(quán)限限制,采用人工操作測(cè)試軟件造成的測(cè)試效率低下,測(cè)試結(jié)果準(zhǔn)確性差的問(wèn)題。
[0006]第一方面,本發(fā)明實(shí)施例提供了一種基于Android系統(tǒng)的自動(dòng)化測(cè)試方法,包括:根據(jù)預(yù)先接收的測(cè)試用例生成作用于待測(cè)軟件的操作指令;按照所述操作指令對(duì)所述待測(cè)軟件執(zhí)行相應(yīng)的操作;接收所述待測(cè)軟件響應(yīng)所述操作后的輸出信息;根據(jù)所述輸出信息創(chuàng)建測(cè)試報(bào)告。
[0007]優(yōu)選的,所述根據(jù)預(yù)先接收的測(cè)試用例生成作用于待測(cè)軟件的操作指令,包括:獲取所述測(cè)試用例對(duì)應(yīng)的操作控件的控件屬性;根據(jù)所述控件屬性確定所述操作控件的操作方法和控件標(biāo)識(shí);生成與所述操作方法和所述控件標(biāo)識(shí)相匹配的虛擬操作指令。
[0008]優(yōu)選的,所述按照所述操作指令對(duì)所述待測(cè)軟件執(zhí)行相應(yīng)的操作,包括:從所述待測(cè)軟件的程序中查找所述控件標(biāo)識(shí);在所述控件標(biāo)識(shí)所確定的功能區(qū)域內(nèi)執(zhí)行與所述操作指令相應(yīng)的虛擬操作。
[0009]優(yōu)選的,所述按照所述操作指令對(duì)所述待測(cè)軟件執(zhí)行相應(yīng)的操作,包括:根據(jù)所述控件標(biāo)識(shí)確定所述控件當(dāng)前的位置信息;在所述位置標(biāo)識(shí)確定的位置執(zhí)行與所述操作指令相應(yīng)的虛擬操作。
[0010]優(yōu)選的,所述根據(jù)所述輸出信息創(chuàng)建測(cè)試報(bào)告,包括:讀取與所述輸出信息相對(duì)應(yīng)的標(biāo)準(zhǔn)信息;運(yùn)算所述輸出信息和所述標(biāo)準(zhǔn)信息,得到二者的差量信息;判斷所述差量信息是否符合預(yù)設(shè)條件;如果所述差量信息符合所述預(yù)設(shè)條件,則將所述測(cè)試用例的測(cè)試結(jié)果標(biāo)記為運(yùn)行正常;如果所述差量信息不符合所述預(yù)設(shè)條件,則將所述測(cè)試用例的測(cè)試結(jié)果標(biāo)記為存在缺陷。
[0011]優(yōu)選的,在所述根據(jù)預(yù)先接收的測(cè)試用例生成作用于待測(cè)軟件的操作指令之前,還包括:接收所述測(cè)試用例的場(chǎng)景用例;按照預(yù)設(shè)格式存儲(chǔ)所述場(chǎng)景用例,得到所述測(cè)試用例。
[0012]第二方面,本發(fā)明實(shí)施例還提供了一種基于Android系統(tǒng)的自動(dòng)化測(cè)試裝置,包括:生成模塊,用于根據(jù)預(yù)先接收的測(cè)試用例生成作用于待測(cè)軟件的操作指令;執(zhí)行模塊,用于按照所述生成模塊所生成的操作指令對(duì)所述待測(cè)軟件執(zhí)行相應(yīng)的操作;接收模塊,用于接收所述待測(cè)軟件響應(yīng)所述執(zhí)行模塊執(zhí)行操作后的輸出信息;創(chuàng)建模塊,用于根據(jù)所述接收模塊所接收的輸出信息創(chuàng)建測(cè)試報(bào)告。
[0013]優(yōu)選的,所述生成模塊包括獲取單元、確定單元和生成單元,其中,所述獲取單元,用于獲取所述測(cè)試用例對(duì)應(yīng)的操作控件的控件屬性;所述確定單元,用于根據(jù)所述控件屬性確定所述操作控件的操作方法和控件標(biāo)識(shí);所述生成單元,用于生成與所述操作方法和所述控件標(biāo)識(shí)相匹配的虛擬操作指令。
[0014]優(yōu)選的,所述執(zhí)行模塊包括查找單元和執(zhí)行單元,其中,所述查找單元,用于從所述待測(cè)軟件的程序中查找所述控件標(biāo)識(shí);所述執(zhí)行單元,用于在所述控件標(biāo)識(shí)所確定的功能區(qū)域內(nèi)執(zhí)行與所述操作指令相應(yīng)的虛擬操作。
[0015]優(yōu)選的,所述確定單元,還用于根據(jù)所述控件標(biāo)識(shí)確定所述控件當(dāng)前的位置信息;所述執(zhí)行單元,還用于在所述位置標(biāo)識(shí)確定的位置執(zhí)行與所述操作指令相應(yīng)的虛擬操作。
[0016]優(yōu)選的,所述創(chuàng)建模塊包括讀取單元、運(yùn)算單元、判斷單元和標(biāo)記單元,其中,所述讀取單元,用于讀取與所述輸出信息相對(duì)應(yīng)的標(biāo)準(zhǔn)信息;所述運(yùn)算單元,用于運(yùn)算所述輸出信息和所述標(biāo)準(zhǔn)信息,得到二者的差量信息;所述判斷單元,用于判斷所述差量信息是否符合預(yù)設(shè)條件;所述標(biāo)記單元,用于在所述差量信息符合所述預(yù)設(shè)條件時(shí),將所述測(cè)試用例的測(cè)試結(jié)果標(biāo)記為運(yùn)行正常;所述標(biāo)記單元,還用于在所述差量信息不符合所述預(yù)設(shè)條件時(shí),將所述測(cè)試用例的測(cè)試結(jié)果標(biāo)記為存在缺陷。
[0017]優(yōu)選的,還包括存儲(chǔ)模塊,其中,所述接收模塊,還用于接收所述測(cè)試用例的場(chǎng)景用例;所述存儲(chǔ)模塊,用于按照預(yù)設(shè)格式存儲(chǔ)所述接收模塊所接收的場(chǎng)景用例,得到所述測(cè)試用例。
[0018]由以上技術(shù)方案可知,本發(fā)明實(shí)施例所提供的基于Android系統(tǒng)的自動(dòng)化測(cè)試方法及裝置,在接收預(yù)先輸入的測(cè)試用例之后,根據(jù)測(cè)試用例生成作用于待測(cè)軟件的操作指令,并按照測(cè)試用例對(duì)待測(cè)軟件執(zhí)行相應(yīng)的操作,然后,接收待測(cè)軟件響應(yīng)操作后的輸出信息,根據(jù)輸出信息創(chuàng)建測(cè)試報(bào)告。可以看出,該過(guò)程中“生成操作指令”、“對(duì)待測(cè)軟件進(jìn)行操作”、“接收輸出信息”和“創(chuàng)建測(cè)試報(bào)告”的操作所涉及的權(quán)限,均為Android系統(tǒng)所能夠授權(quán)的權(quán)限。即,本發(fā)明實(shí)施例的技術(shù)方案,測(cè)試過(guò)程的每個(gè)步驟所需的權(quán)限,均在Android系統(tǒng)所能夠授權(quán)的權(quán)限內(nèi),從而與現(xiàn)有技術(shù)相比,在Android系統(tǒng)權(quán)限限制的情況下,本發(fā)明實(shí)施例的技術(shù)方案,能夠?qū)崿F(xiàn)軟件的自動(dòng)化測(cè)試,不僅能夠提高軟件測(cè)試的效率,而且還能夠提高測(cè)試結(jié)果的準(zhǔn)確性。
【附圖說(shuō)明】
[0019]為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。通過(guò)附圖所示,本發(fā)明的上述及其它目的、特征和優(yōu)勢(shì)將更加清晰。在全部附圖中相同的附圖標(biāo)記指示相同的部分。并未刻意按實(shí)際尺寸等比例縮放繪制附圖,重點(diǎn)在于示出本發(fā)明的主旨。
[0020]圖1為本發(fā)明實(shí)施例提供的基于Android系統(tǒng)的自動(dòng)化測(cè)試方法的方法流程圖;
[0021]圖2為本發(fā)明實(shí)施例提供的基于Android系統(tǒng)的自動(dòng)化測(cè)試裝置的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0022]眾所周知,Android系統(tǒng)基于Linux內(nèi)核運(yùn)行,而Android與Linux分別設(shè)置有嚴(yán)格的安全及權(quán)限機(jī)制。其中,Linux系統(tǒng)權(quán)限是指對(duì)相關(guān)系統(tǒng)文件的訪問(wèn)和執(zhí)行權(quán)限,只有系統(tǒng)級(jí)別的用戶或者用戶組才擁有該權(quán)限。而在Andr ο i d系統(tǒng)運(yùn)行的APP (Applicati on,應(yīng)用程序)的程序文件,實(shí)質(zhì)上運(yùn)行在虛擬機(jī)上,因此,對(duì)應(yīng)的權(quán)限是Android系統(tǒng)的權(quán)限,即使獲取到root權(quán)限也無(wú)法執(zhí)行和訪問(wèn)系統(tǒng)文件。然而,軟件測(cè)試主要是基于操作系統(tǒng)的性能來(lái)測(cè)試軟件的功能和性能,導(dǎo)致搭建測(cè)試框架以及測(cè)試軟件與系統(tǒng)的兼容性等過(guò)程,需要訪問(wèn)和執(zhí)行系統(tǒng)文件,由于該過(guò)程受到權(quán)限的限制,造成基于Android系統(tǒng)的自動(dòng)化測(cè)試無(wú)法執(zhí)行,因而提出了本發(fā)明實(shí)施例的技術(shù)方案。
[0023]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整的描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0024]為了在Android系統(tǒng)權(quán)限限制的條件下,實(shí)現(xiàn)軟件的自動(dòng)化測(cè)試,本發(fā)明實(shí)施例設(shè)置有測(cè)試平臺(tái),該測(cè)試平臺(tái)運(yùn)行過(guò)程中所使用到的權(quán)限,僅為Android系統(tǒng)層級(jí)的權(quán)限,不涉及Linux系統(tǒng)層級(jí)的權(quán)限,因此,基于Android系統(tǒng)能夠?qū)崿F(xiàn)自動(dòng)化測(cè)試。其中,測(cè)試平臺(tái)執(zhí)行測(cè)試的過(guò)程詳見(jiàn)下述實(shí)施例的描述。
[0025]請(qǐng)參見(jiàn)圖1,圖1為本發(fā)明實(shí)施例提供的基于Android系統(tǒng)的自動(dòng)化測(cè)試方法的方法流程圖,所述方法包括以下步驟:
[0026]步驟SlOl:根據(jù)預(yù)先接收的測(cè)試用例生成作用于待測(cè)軟件的操作指令。
[0027]其中,在測(cè)試之前,預(yù)先將測(cè)試平臺(tái)安裝到智能終端,所述測(cè)試平臺(tái)為技術(shù)人員預(yù)先開(kāi)發(fā)的用于自動(dòng)化測(cè)試的APP。需要指出的,由于Android系統(tǒng)默認(rèn)的權(quán)限為,APP無(wú)任何權(quán)限操作其他APP,當(dāng)APP需要操作其他APP時(shí),可以申請(qǐng)相應(yīng)的權(quán)限。因此,在安裝測(cè)試平臺(tái)時(shí),系統(tǒng)會(huì)檢測(cè)測(cè)試平臺(tái)請(qǐng)求的權(quán)限,并根據(jù)請(qǐng)求為測(cè)試平臺(tái)分配相應(yīng)的權(quán)限。
[0028]此外,在測(cè)試之前,測(cè)試人員預(yù)先根據(jù)待測(cè)軟件的操作場(chǎng)景設(shè)計(jì)測(cè)試用例,為便于描述,本發(fā)明實(shí)施例簡(jiǎn)稱為場(chǎng)景用例。其中,場(chǎng)景用例可以包括測(cè)試內(nèi)容、測(cè)試條件和待測(cè)軟件按照測(cè)試條件運(yùn)行的預(yù)期結(jié)果。為了記錄場(chǎng)景用例,為自動(dòng)化測(cè)試提供測(cè)試依據(jù),測(cè)試平臺(tái)可以按照一定格式接收?qǐng)鼍坝美?,并將其翻譯為測(cè)試平臺(tái)能夠識(shí)別的程序語(yǔ)言,以作為測(cè)試用例。需要說(shuō)明的是,測(cè)試平臺(tái)可以通過(guò)表格存儲(chǔ)翻譯后的測(cè)試內(nèi)容、測(cè)試條件及預(yù)期結(jié)果,以便于維護(hù)三者的對(duì)應(yīng)關(guān)系。
[0029]為了保證測(cè)試的操作過(guò)程在被授予的權(quán)限內(nèi),本發(fā)明實(shí)施例的技術(shù)方案,通過(guò)對(duì)待測(cè)軟件進(jìn)行虛擬操作來(lái)執(zhí)行測(cè)試,因此,測(cè)試平臺(tái)需要對(duì)應(yīng)每個(gè)測(cè)試用例生成操作指令,而所生成的操作指令與所作用的控件相適應(yīng),例如,如果是“提交”或者“發(fā)送”類的button控件,則操作指令為虛擬點(diǎn)擊操作指令;如果是text類的控件,則執(zhí)行輸入相應(yīng)內(nèi)容的虛擬操作指令。
[0030]根據(jù)操作指令與控件的關(guān)系,具體的,測(cè)試平臺(tái)首先可以從測(cè)試用例中獲取本條測(cè)試用例對(duì)應(yīng)操作控件的控件屬性,根據(jù)控件屬性確定該控件的操作方法及控件標(biāo)識(shí),然后,可以根據(jù)控件的操作方法和控件標(biāo)識(shí)生成對(duì)應(yīng)該控件的虛擬操作指令。
[0031]需要指出的是,本方案中所述的待測(cè)軟件,可以是基于Android系統(tǒng)的應(yīng)用軟件或者系統(tǒng)軟件,本方案對(duì)此不做限制。
[0032]由本步驟的描述可知,本方案通過(guò)設(shè)置第三方測(cè)試軟件,在Android系統(tǒng)能夠授予的權(quán)限范圍內(nèi),將測(cè)試用例轉(zhuǎn)換為虛擬操作指令,從而為自動(dòng)化測(cè)試提供技術(shù)支持。
[0033]步驟S102:按照所述操作指令對(duì)所述待測(cè)軟件執(zhí)行相應(yīng)的操作。
[0034]其中,根據(jù)上述描述可知,操作指令由測(cè)試平臺(tái)生成,而操作指令對(duì)應(yīng)操作的是待測(cè)軟件,由于測(cè)試平臺(tái)與待測(cè)軟件是相互獨(dú)立的兩個(gè)程序,測(cè)試平臺(tái)無(wú)法直接調(diào)用操作指令對(duì)待測(cè)軟件執(zhí)行虛擬操作,因此,本方案中,在對(duì)待測(cè)軟件執(zhí)行虛擬操作時(shí),可以通過(guò)調(diào)用API(Applicat1n Programming Interface,應(yīng)用程序編程接口)對(duì)待測(cè)軟件執(zhí)行虛擬操作。通過(guò)調(diào)用API接口執(zhí)行虛擬操作的過(guò)程,為本領(lǐng)域技術(shù)人員所熟知的技術(shù),本發(fā)明實(shí)施例此處不再贅述。
[0035]需要說(shuō)明的是,控件根據(jù)操作方式可以分為兩類,下面對(duì)兩類控件的操作方式分別進(jìn)行說(shuō)明。
[0036]當(dāng)控件的操作方式為輸入操作時(shí),測(cè)試平臺(tái)首先讀取待測(cè)軟件的程序,并從待測(cè)軟件的程序中查找相應(yīng)的控件標(biāo)識(shí),在查找到控件標(biāo)識(shí)之后,可以根據(jù)控件標(biāo)識(shí)確定控件的功能區(qū)域,在本實(shí)施例中,也就是輸入內(nèi)容的區(qū)域,然后,將預(yù)設(shè)的內(nèi)容寫入輸入?yún)^(qū)域。
[0037]需要說(shuō)明的是,必要情況下,執(zhí)行虛擬輸入操作時(shí),預(yù)設(shè)內(nèi)容的格式應(yīng)當(dāng)符合控件的要求,例如,待測(cè)軟件為郵箱,對(duì)應(yīng)的控件為“發(fā)件人”,且對(duì)發(fā)送功能進(jìn)行常規(guī)測(cè)試時(shí),那么預(yù)設(shè)內(nèi)容應(yīng)當(dāng)符合郵箱地址的格式,并且應(yīng)當(dāng)為合法的郵箱地址。當(dāng)然,當(dāng)測(cè)試待測(cè)郵箱的其他功能時(shí),可以相應(yīng)的設(shè)置符合測(cè)試條件的輸入內(nèi)容,本發(fā)明實(shí)施例此處不再詳述。
[0038]此外,如果控件的操作方式為點(diǎn)擊操作,測(cè)試平臺(tái)可以根據(jù)控件標(biāo)識(shí)確定該控件顯示在屏幕上的位置信息,然后,在位置信息確定的位置處執(zhí)行虛擬點(diǎn)擊操作。例如,當(dāng)控件為“播放”按鈕時(shí),其標(biāo)識(shí)包括“播放”字樣,可以通過(guò)坐標(biāo)的方式確定“播放”按鈕在屏幕上顯示的位置,并在所確定的位置處執(zhí)行虛擬點(diǎn)擊操作。
[0039]本步驟所述的方案,通過(guò)對(duì)待測(cè)軟件執(zhí)行虛擬操作,能夠在被授權(quán)的權(quán)限內(nèi)完全代替人工執(zhí)行自動(dòng)化操作,從而能夠大大的提高測(cè)試的效率,節(jié)省人力資源。
[0040 ]步驟S103:接收所述待測(cè)軟件響應(yīng)所述操作后的輸出信息。
[0041]其中,當(dāng)測(cè)試平臺(tái)對(duì)待測(cè)軟件執(zhí)行虛擬操作后,待測(cè)軟件被觸發(fā)運(yùn)行并產(chǎn)生運(yùn)行結(jié)果,如果待測(cè)軟件運(yùn)行正常,則可以向測(cè)試平臺(tái)發(fā)送運(yùn)行正常的輸出信息,運(yùn)行正常時(shí)的輸出信息可以設(shè)置為標(biāo)識(shí)“I”或者其他標(biāo)識(shí),本發(fā)明實(shí)施例對(duì)此不做限制;如果待測(cè)軟件運(yùn)行不正常,則可以向測(cè)試平臺(tái)發(fā)送運(yùn)行錯(cuò)誤的錯(cuò)誤代碼。例如,當(dāng)測(cè)試郵箱的發(fā)送功能時(shí),如果發(fā)送成功,則可以向測(cè)試平臺(tái)發(fā)送標(biāo)識(shí)“I”;如果不填寫收件人的郵箱地址,那么郵箱運(yùn)行錯(cuò)誤,則向測(cè)試平臺(tái)發(fā)送錯(cuò)誤代碼550。
[0042]需要說(shuō)明的是,由于待測(cè)軟件與測(cè)試平臺(tái)為相互獨(dú)立的軟件,所以待測(cè)軟件向測(cè)試平臺(tái)發(fā)送輸出信息時(shí),也可以調(diào)用Andr ο i d系統(tǒng)的通信接口實(shí)現(xiàn),例如,API接口。
[0043]步驟S104:根據(jù)所述輸出信息創(chuàng)建測(cè)試報(bào)告。
[0044]其中,根據(jù)上述描述可知,測(cè)試平臺(tái)所接收的場(chǎng)景用例中包括預(yù)期運(yùn)行結(jié)果,當(dāng)測(cè)試平臺(tái)接收?qǐng)鼍坝美螅瑢⑵浞g為與預(yù)期運(yùn)行結(jié)果對(duì)應(yīng)的值或者錯(cuò)誤代碼,并將該值或者錯(cuò)誤代碼記錄為正常運(yùn)行應(yīng)當(dāng)輸出的標(biāo)準(zhǔn)信息。
[0045]例如,測(cè)試郵箱的發(fā)送功能時(shí),測(cè)試條件為發(fā)件人和收件人均填寫正確,那么預(yù)期測(cè)試結(jié)果應(yīng)當(dāng)為正常發(fā)送,則將該條測(cè)試用例的標(biāo)準(zhǔn)信息翻譯為“I”;如果測(cè)試條件為發(fā)件人填寫正確,收件人填寫錯(cuò)誤或者不填寫,那么,該條測(cè)試預(yù)期的運(yùn)行結(jié)果應(yīng)當(dāng)為發(fā)送失敗,且失敗原因是收件人錯(cuò)誤或者不存在,而此類錯(cuò)誤對(duì)應(yīng)的錯(cuò)誤代碼是550,那么,測(cè)試平臺(tái)可以將本條測(cè)試用例對(duì)應(yīng)的標(biāo)準(zhǔn)信息記錄為550。當(dāng)然,上述僅為本發(fā)明的一個(gè)優(yōu)選示例,如果所測(cè)試的軟件是其他軟件,可以相應(yīng)的設(shè)置標(biāo)準(zhǔn)信息的內(nèi)容。
[0046]測(cè)試平臺(tái)在接收到待測(cè)軟件響應(yīng)虛擬操作的輸出信息之后,讀取該輸出信息對(duì)應(yīng)的標(biāo)準(zhǔn)信息,并對(duì)輸出信息和標(biāo)準(zhǔn)信息進(jìn)行運(yùn)算,得到二者的差量信息,判斷差量信息是否符合預(yù)設(shè)條件,如果差量信息符合預(yù)設(shè)條件,則認(rèn)為待測(cè)軟件的運(yùn)行結(jié)果與預(yù)期結(jié)果相同,該測(cè)試條件下的實(shí)際運(yùn)行狀況正常,將本條測(cè)試用例的測(cè)試結(jié)果標(biāo)記為運(yùn)行正常;如果差量信息不符合預(yù)設(shè)條件,則認(rèn)為待測(cè)軟件的運(yùn)行結(jié)果與預(yù)期結(jié)果不符,該測(cè)試條件下的運(yùn)行狀況有誤,相關(guān)的程序存在錯(cuò)誤,將本條測(cè)試用例的測(cè)試結(jié)果標(biāo)記為存在缺陷,并將記錄有測(cè)試結(jié)果的測(cè)試報(bào)告向測(cè)試人員展示,以便于相關(guān)技術(shù)人員對(duì)存在缺陷的部分進(jìn)行修復(fù)。
[0047]需要說(shuō)明的是,上述預(yù)設(shè)條件可以為差量信息等于零,或者差量信息的絕對(duì)值小于一定值,具體的,可以根據(jù)需求進(jìn)行設(shè)定,本發(fā)明實(shí)施例對(duì)此不做限制。
[0048]此外,由于測(cè)試報(bào)告需要向相關(guān)技術(shù)人員展示,以便于相關(guān)技術(shù)人員對(duì)待測(cè)軟件的缺陷進(jìn)行修復(fù),因此,本發(fā)明實(shí)施例中,當(dāng)測(cè)試結(jié)果為存在缺陷時(shí),可以通過(guò)字體的顏色、大小或者形式,將該條測(cè)試結(jié)果突出顯示。例如,運(yùn)行正常的測(cè)試結(jié)果使用黑色字體記錄,存在缺陷的測(cè)試結(jié)果可以使用紅色字體記錄,從而能夠突出存在缺陷的測(cè)試結(jié)果,更有利于相關(guān)技術(shù)人員對(duì)缺陷進(jìn)行修復(fù)。
[0049]由本實(shí)施例的描述可知,本發(fā)明實(shí)施例的技術(shù)方案,測(cè)試過(guò)程的每個(gè)步驟所需的權(quán)限,均在Android系統(tǒng)所能夠授權(quán)的權(quán)限內(nèi),從而與現(xiàn)有技術(shù)相比,在Android系統(tǒng)權(quán)限限制的情況下,本發(fā)明實(shí)施例的技術(shù)方案,能夠?qū)崿F(xiàn)軟件的自動(dòng)化測(cè)試,不僅能夠提高軟件測(cè)試的效率,而且還能夠提高測(cè)試結(jié)果的準(zhǔn)確性。
[0050]與上述實(shí)現(xiàn)方法相對(duì)應(yīng)的,本發(fā)明實(shí)施例還提供了一種基于Android系統(tǒng)的自動(dòng)化測(cè)試裝置,請(qǐng)參見(jiàn)圖2,圖2為本發(fā)明實(shí)施例提供的基于Android系統(tǒng)的自動(dòng)化測(cè)試裝置的結(jié)構(gòu)示意圖。
[0051]所述裝置包括:生成模塊11、執(zhí)行模塊12、接收模塊13和創(chuàng)建模塊14,其中,生成模塊11,用于根據(jù)預(yù)先接收的測(cè)試用例生成作用于待測(cè)軟件的操作指令;執(zhí)行模塊12,用于按照所述生成模塊11所生成的操作指令對(duì)所述待測(cè)軟件執(zhí)行相應(yīng)的操作;接收模塊13,用于接收所述待測(cè)軟件響應(yīng)所述執(zhí)行模塊12執(zhí)行操作后的輸出信息;創(chuàng)建模塊14,用于根據(jù)所述接收模塊13所接收的輸出信息創(chuàng)建測(cè)試報(bào)告。
[0052]根據(jù)上述實(shí)施例的描述,在一個(gè)具體的實(shí)施例中,生成模塊11包括獲取單元、確定單元和生成單元,其中,所述獲取單元,用于獲取所述測(cè)試用例對(duì)應(yīng)的操作控件的控件屬性;所述確定單元,用于根據(jù)所述控件屬性確定所述操作控件的操作方法和控件標(biāo)識(shí);所述生成單元,用于生成與所述操作方法和所述控件標(biāo)識(shí)相匹配的虛擬操作指令。
[0053]在另一個(gè)實(shí)施例中,執(zhí)行模塊12具體包括查找單元和執(zhí)行單元,其中,所述查找單元,用于從所述待測(cè)軟件的程序中查找所述控件標(biāo)識(shí);所述執(zhí)行單元,用于在所述控件標(biāo)識(shí)所確定的功能區(qū)域內(nèi)執(zhí)行與所述操作指令相應(yīng)的虛擬操作。
[0054]需要說(shuō)明的是,在上述實(shí)施例的基礎(chǔ)上,在另一個(gè)實(shí)施例中,所述確定單元,還用于根據(jù)所述控件標(biāo)識(shí)確定所述控件當(dāng)前的位置信息;所述執(zhí)行單元,還用于在所述位置標(biāo)識(shí)確定的位置執(zhí)行與所述操作指令相應(yīng)的虛擬操作。
[0055]此外,創(chuàng)建模塊14具體包括讀取單元、運(yùn)算單元、判斷單元和標(biāo)記單元,其中,所述讀取單元,用于讀取與所述輸出信息相對(duì)應(yīng)的標(biāo)準(zhǔn)信息;所述運(yùn)算單元,用于運(yùn)算所述輸出信息和所述標(biāo)準(zhǔn)信息,得到二者的差量信息;所述判斷單元,用于判斷所述差量信息是否符合預(yù)設(shè)條件;所述標(biāo)記單元,用于在所述差量信息符合所述預(yù)設(shè)條件時(shí),將所述測(cè)試用例的測(cè)試結(jié)果標(biāo)記為運(yùn)行正常;在另一個(gè)實(shí)施例中,所述標(biāo)記單元,還用于在所述差量信息不符合所述預(yù)設(shè)條件時(shí),將所述測(cè)試用例的測(cè)試結(jié)果標(biāo)記為存在缺陷。
[0056]在上述實(shí)施例的基礎(chǔ)上,在另一個(gè)實(shí)施例中,所述裝置還包括存儲(chǔ)模塊,在本實(shí)施例中,接收模塊13,還用于接收所述測(cè)試用例的場(chǎng)景用例;存儲(chǔ)模塊,用于按照預(yù)設(shè)格式存儲(chǔ)所述接收模塊所接收的場(chǎng)景用例,得到所述測(cè)試用例。
[0057]所述裝置中各個(gè)模塊和單元的功能和作用的實(shí)現(xiàn)過(guò)程詳見(jiàn)上述方法中對(duì)應(yīng)的實(shí)現(xiàn)過(guò)程,在此不再贅述。
[0058]綜合上述,本發(fā)明實(shí)施例所提供的基于Android系統(tǒng)的自動(dòng)化測(cè)試方法及裝置,在接收預(yù)先輸入的測(cè)試用例之后,根據(jù)測(cè)試用例生成作用于待測(cè)軟件的操作指令,并按照測(cè)試用例對(duì)待測(cè)軟件執(zhí)行相應(yīng)的操作,然后,接收待測(cè)軟件響應(yīng)操作后的輸出信息,根據(jù)輸出信息創(chuàng)建測(cè)試報(bào)告??梢钥闯?,該過(guò)程中“生成操作指令”、“對(duì)待測(cè)軟件進(jìn)行操作”、“接收輸出信息”和“創(chuàng)建測(cè)試報(bào)告”的操作所涉及的權(quán)限,均為Android系統(tǒng)所能夠授權(quán)的權(quán)限。即,本發(fā)明實(shí)施例的技術(shù)方案,測(cè)試過(guò)程的每個(gè)步驟所需的權(quán)限,均在Android系統(tǒng)所能夠授權(quán)的權(quán)限內(nèi),從而與現(xiàn)有技術(shù)相比,在Android系統(tǒng)權(quán)限限制的情況下,本發(fā)明實(shí)施例的技術(shù)方案,能夠?qū)崿F(xiàn)軟件的自動(dòng)化測(cè)試,不僅能夠提高軟件測(cè)試的效率,而且還能夠提高測(cè)試結(jié)果的準(zhǔn)確性。
[0059]以上所述僅是本發(fā)明的【具體實(shí)施方式】,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也應(yīng)視為本發(fā)明的保護(hù)范圍。
【主權(quán)項(xiàng)】
1.一種基于Android系統(tǒng)的自動(dòng)化測(cè)試方法,其特征在于,包括: 根據(jù)預(yù)先接收的測(cè)試用例生成作用于待測(cè)軟件的操作指令; 按照所述操作指令對(duì)所述待測(cè)軟件執(zhí)行相應(yīng)的操作; 接收所述待測(cè)軟件響應(yīng)所述操作后的輸出信息; 根據(jù)所述輸出信息創(chuàng)建測(cè)試報(bào)告。2.如權(quán)利要求1所述的方法,其特征在于,所述根據(jù)預(yù)先接收的測(cè)試用例生成作用于待測(cè)軟件的操作指令,包括: 獲取所述測(cè)試用例對(duì)應(yīng)的操作控件的控件屬性; 根據(jù)所述控件屬性確定所述操作控件的操作方法和控件標(biāo)識(shí); 生成與所述操作方法和所述控件標(biāo)識(shí)相匹配的虛擬操作指令。3.如權(quán)利要求1或2所述的方法,其特征在于,所述按照所述操作指令對(duì)所述待測(cè)軟件執(zhí)行相應(yīng)的操作,包括: 從所述待測(cè)軟件的程序中查找所述控件標(biāo)識(shí); 在所述控件標(biāo)識(shí)所確定的功能區(qū)域內(nèi)執(zhí)行與所述操作指令相應(yīng)的虛擬操作。4.如權(quán)利要求1或2所述的方法,其特征在于,所述按照所述操作指令對(duì)所述待測(cè)軟件執(zhí)行相應(yīng)的操作,包括: 根據(jù)所述控件標(biāo)識(shí)確定所述控件當(dāng)前的位置信息; 在所述位置標(biāo)識(shí)確定的位置執(zhí)行與所述操作指令相應(yīng)的虛擬操作。5.如權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述輸出信息創(chuàng)建測(cè)試報(bào)告,包括: 讀取與所述輸出信息相對(duì)應(yīng)的標(biāo)準(zhǔn)信息; 運(yùn)算所述輸出信息和所述標(biāo)準(zhǔn)信息,得到二者的差量信息; 判斷所述差量信息是否符合預(yù)設(shè)條件; 如果所述差量信息符合所述預(yù)設(shè)條件,則將所述測(cè)試用例的測(cè)試結(jié)果標(biāo)記為運(yùn)行正常; 如果所述差量信息不符合所述預(yù)設(shè)條件,則將所述測(cè)試用例的測(cè)試結(jié)果標(biāo)記為存在缺陷。6.如權(quán)利要求1所述的方法,其特征在于,在所述根據(jù)預(yù)先接收的測(cè)試用例生成作用于待測(cè)軟件的操作指令之前,還包括: 接收所述測(cè)試用例的場(chǎng)景用例; 按照預(yù)設(shè)格式存儲(chǔ)所述場(chǎng)景用例,得到所述測(cè)試用例。7.一種基于Android系統(tǒng)的自動(dòng)化測(cè)試裝置,其特征在于,包括: 生成模塊,用于根據(jù)預(yù)先接收的測(cè)試用例生成作用于待測(cè)軟件的操作指令; 執(zhí)行模塊,用于按照所述生成模塊所生成的操作指令對(duì)所述待測(cè)軟件執(zhí)行相應(yīng)的操作; 接收模塊,用于接收所述待測(cè)軟件響應(yīng)所述執(zhí)行模塊執(zhí)行操作后的輸出信息; 創(chuàng)建模塊,用于根據(jù)所述接收模塊所接收的輸出信息創(chuàng)建測(cè)試報(bào)告。8.如權(quán)利要求7所述的裝置,其特征在于,所述生成模塊包括獲取單元、確定單元和生成單元,其中, 所述獲取單元,用于獲取所述測(cè)試用例對(duì)應(yīng)的操作控件的控件屬性; 所述確定單元,用于根據(jù)所述控件屬性確定所述操作控件的操作方法和控件標(biāo)識(shí); 所述生成單元,用于生成與所述操作方法和所述控件標(biāo)識(shí)相匹配的虛擬操作指令。9.如權(quán)利要求7或8所述的裝置,其特征在于,所述執(zhí)行模塊包括查找單元和執(zhí)行單元,其中, 所述查找單元,用于從所述待測(cè)軟件的程序中查找所述控件標(biāo)識(shí); 所述執(zhí)行單元,用于在所述控件標(biāo)識(shí)所確定的功能區(qū)域內(nèi)執(zhí)行與所述操作指令相應(yīng)的虛擬操作。10.如權(quán)利要求7或8所述的裝置,其特征在于, 所述確定單元,還用于根據(jù)所述控件標(biāo)識(shí)確定所述控件當(dāng)前的位置信息; 所述執(zhí)行單元,還用于在所述位置標(biāo)識(shí)確定的位置執(zhí)行與所述操作指令相應(yīng)的虛擬操作。11.如權(quán)利要求7所述的裝置,其特征在于,所述創(chuàng)建模塊包括讀取單元、運(yùn)算單元、判斷單元和標(biāo)記單元,其中, 所述讀取單元,用于讀取與所述輸出信息相對(duì)應(yīng)的標(biāo)準(zhǔn)信息; 所述運(yùn)算單元,用于運(yùn)算所述輸出信息和所述標(biāo)準(zhǔn)信息,得到二者的差量信息; 所述判斷單元,用于判斷所述差量信息是否符合預(yù)設(shè)條件; 所述標(biāo)記單元,用于在所述差量信息符合所述預(yù)設(shè)條件時(shí),將所述測(cè)試用例的測(cè)試結(jié)果標(biāo)記為運(yùn)行正常; 所述標(biāo)記單元,還用于在所述差量信息不符合所述預(yù)設(shè)條件時(shí),將所述測(cè)試用例的測(cè)試結(jié)果標(biāo)記為存在缺陷。12.如權(quán)利要求7所述的裝置,其特征在于,還包括存儲(chǔ)模塊,其中, 所述接收模塊,還用于接收所述測(cè)試用例的場(chǎng)景用例; 所述存儲(chǔ)模塊,用于按照預(yù)設(shè)格式存儲(chǔ)所述接收模塊所接收的場(chǎng)景用例,得到所述測(cè)試用例。
【文檔編號(hào)】G06F11/36GK105868100SQ201510971726
【公開(kāi)日】2016年8月17日
【申請(qǐng)日】2015年12月22日
【發(fā)明人】敖偉波
【申請(qǐng)人】樂(lè)視網(wǎng)信息技術(shù)(北京)股份有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1