1.一種APP測(cè)試方法,包括:
針對(duì)待測(cè)試的應(yīng)用,加載相應(yīng)的測(cè)試模板配置信息;所述測(cè)試模板配置信息包括對(duì)所述應(yīng)用的各個(gè)Activity的各UI界面元素的測(cè)試策略;
在待測(cè)試應(yīng)用啟動(dòng)后,獲取當(dāng)前激活的Activity中的UI界面元素;
從所述測(cè)試模板配置信息中提取對(duì)當(dāng)前Activity中UI界面元素的測(cè)試策略,并根據(jù)各UI界面元素的測(cè)試邏輯對(duì)所述UI界面元素進(jìn)行測(cè)試;
將各Activity的各UI界面元素的測(cè)試結(jié)果輸出。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述針對(duì)待測(cè)試的應(yīng)用,加載相應(yīng)的測(cè)試模板配置信息;所述測(cè)試模板配置信息包括對(duì)所述應(yīng)用的各個(gè)Activity的各UI界面元素的測(cè)試策略的步驟之前,還包括:
獲取待測(cè)試應(yīng)用的各個(gè)Activity的view布局結(jié)構(gòu)所對(duì)應(yīng)的結(jié)構(gòu)樹;
接收對(duì)結(jié)構(gòu)樹的各個(gè)節(jié)點(diǎn)所配置的測(cè)試策略;
根據(jù)所述對(duì)結(jié)構(gòu)樹的各個(gè)節(jié)點(diǎn)所配置的測(cè)試策略,生成針對(duì)所述應(yīng)用的測(cè)試模板配置信息。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述獲取待測(cè)試應(yīng)用的各個(gè)Activity的view布局結(jié)構(gòu)所對(duì)應(yīng)的結(jié)構(gòu)樹的步驟包括:
通過(guò)調(diào)用Hierarchy Viewer工具的各布局結(jié)構(gòu)獲取API,獲取待測(cè)試應(yīng)用的各個(gè)Activity的view布局結(jié)構(gòu)所對(duì)應(yīng)的結(jié)構(gòu)樹。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述從所述測(cè)試模板配置信息中提取對(duì)當(dāng)前Activity中UI界面元素的測(cè)試策略,并根據(jù)各UI界面元素的測(cè)試邏輯對(duì)所述UI界面元素進(jìn)行測(cè)試的步驟包括:
將當(dāng)前激活的Activity中的UI界面元素,與測(cè)試模板配置信息中的各Activity中的UI界面元素進(jìn)行匹配,確定允許觸發(fā)的UI界面元素;
對(duì)各UI界面元素,按照相應(yīng)的測(cè)試策略觸發(fā)所述UI界面元素進(jìn)行測(cè)試。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述對(duì)所述應(yīng)用的各個(gè)Activity的各UI界面元素的測(cè)試策略包括:
各Activity中允許觸發(fā)的UI界面元素、各UI界面元素的觸發(fā)位置、各UI界面元素的觸發(fā)操作類型、各UI界面元素的觸發(fā)順序。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述對(duì)各UI界面元素,按照相應(yīng)的測(cè)試策略觸發(fā)所述UI界面元素進(jìn)行測(cè)試的步驟包括:
對(duì)于存在觸發(fā)順序的UI界面元素,按照所述觸發(fā)順序觸發(fā)所述UI界面元素進(jìn)行測(cè)試;
對(duì)于相互之間不存在觸發(fā)順序的UI界面元素,隨機(jī)觸發(fā)各UI界面元素進(jìn)行測(cè)試。
7.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述對(duì)所述應(yīng)用的各個(gè)Activity的各UI界面元素的測(cè)試策略,還包括:
對(duì)各Activity的觸發(fā)比例,和/或?qū)Ω鱑I界面元素的觸發(fā)次數(shù)。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于,所述對(duì)各UI界面元素,按照相應(yīng)的測(cè)試策略觸發(fā)所述UI界面元素進(jìn)行測(cè)試的步驟,還包括:
記錄所述UI界面元素所在的Activity的被觸發(fā)數(shù)量;和/或記錄所述UI界面元素被觸發(fā)的數(shù)量。
9.一種APP測(cè)試裝置,包括:
測(cè)試模板配置信息加載模塊,適于針對(duì)待測(cè)試的應(yīng)用,加載相應(yīng)的測(cè)試模板配置信息;所述測(cè)試模板配置信息包括對(duì)所述應(yīng)用的各個(gè)Activity的各UI界面元素的測(cè)試策略;
UI界面元素獲取模塊,適于在待測(cè)試應(yīng)用啟動(dòng)后,獲取當(dāng)前激活的Activity中的UI界面元素;
測(cè)試模塊,適于從所述測(cè)試模板配置信息中提取對(duì)當(dāng)前Activity中UI界面元素的測(cè)試策略,并根據(jù)各UI界面元素的測(cè)試邏輯對(duì)所述UI界面元素進(jìn)行測(cè)試;
輸出模塊,適于將各Activity的各UI界面元素的測(cè)試結(jié)果輸出。
10.一種APP測(cè)試設(shè)備,包括:
存儲(chǔ)器,加載有多條可執(zhí)行指令;
處理器,執(zhí)行所述多條可執(zhí)行指令;所述多條指令包括執(zhí)行以下步驟的方法:
針對(duì)待測(cè)試的應(yīng)用,加載相應(yīng)的測(cè)試模板配置信息;所述測(cè)試模板配置信息包括對(duì)所述應(yīng)用的各個(gè)Activity的各UI界面元素的測(cè)試策略;
在待測(cè)試應(yīng)用啟動(dòng)后,獲取當(dāng)前激活的Activity中的UI界面元素;
從所述測(cè)試模板配置信息中提取對(duì)當(dāng)前Activity中UI界面元素的測(cè)試策略,并根據(jù)各UI界面元素的測(cè)試邏輯對(duì)所述UI界面元素進(jìn)行測(cè)試;
將各Activity的各UI界面元素的測(cè)試結(jié)果輸出。