欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于多探索策略的移動(dòng)應(yīng)用功能性質(zhì)測試方法

文檔序號(hào):40547318發(fā)布日期:2025-01-03 11:06閱讀:9來源:國知局
一種基于多探索策略的移動(dòng)應(yīng)用功能性質(zhì)測試方法

本發(fā)明屬于移動(dòng)軟件自動(dòng)化測試領(lǐng)域。涉及一種對于移動(dòng)應(yīng)用軟件的自動(dòng)化測試方法。具體涉及一種基于多探索策略的移動(dòng)應(yīng)用功能性質(zhì)測試方法。


背景技術(shù):

1、移動(dòng)應(yīng)用是一種基于圖形用戶界面的事件驅(qū)動(dòng)程序,已深入到人們生活的各個(gè)方面,為日常生活提供了便捷的幫助。由于用戶生活中對移動(dòng)應(yīng)用的依賴,其實(shí)用性也得到了業(yè)界的廣泛重視,行業(yè)內(nèi)的各大企業(yè)紛紛采取措施以保障應(yīng)用程序的質(zhì)量和可靠性。然而,受到測試預(yù)言等問題的限制,應(yīng)用程序往往無法得到全面的測試。最近的研究表明,非崩潰類的功能錯(cuò)誤在移動(dòng)應(yīng)用中的錯(cuò)誤占比高達(dá)65.4%。因此,如何有效保障移動(dòng)應(yīng)用的功能正確性成為了一個(gè)關(guān)鍵問題。

2、行業(yè)內(nèi)最常見的方式有通過手動(dòng)測試來驗(yàn)證功能正確性,這通常包括編寫ui測試腳本或直接與移動(dòng)應(yīng)用交互。測試人員通過將預(yù)期行為與實(shí)際行為進(jìn)行比較,以識(shí)別潛在的不一致或功能錯(cuò)誤。顯然,手動(dòng)測試的成本較高,覆蓋面也很有限,通常只涵蓋移動(dòng)應(yīng)用的主要功能路徑,可能會(huì)遺漏關(guān)鍵功能錯(cuò)誤。相比之下,自動(dòng)化測試能夠自動(dòng)探索移動(dòng)應(yīng)用程序,效率較高且成本低,但由于缺乏明確的測試預(yù)言,大多數(shù)現(xiàn)有的自動(dòng)化測試工具只能通過移動(dòng)應(yīng)用拋出的異常來檢測崩潰錯(cuò)誤,因此發(fā)現(xiàn)非崩潰的功能錯(cuò)誤非常困難。雖然一些自動(dòng)化測試工具通過啟發(fā)式方法生成測試預(yù)言來檢測一些非崩潰錯(cuò)誤,但這些預(yù)言往往難以發(fā)現(xiàn)較為復(fù)雜的功能問題。


技術(shù)實(shí)現(xiàn)思路

1、為了克服現(xiàn)有移動(dòng)應(yīng)用自動(dòng)化測試技術(shù)領(lǐng)域存在的上述缺陷,本發(fā)明提出一種基于多探索策略的移動(dòng)應(yīng)用功能性質(zhì)測試方法。該方法利用基于軟件功能性質(zhì)描述語言(pdl)定義軟件功能性質(zhì),并設(shè)計(jì)了兩種策略來引導(dǎo)生成測試過程中的交互操作序列,從而更有效地檢測移動(dòng)應(yīng)用中地功能性錯(cuò)誤,

2、以達(dá)到更有效的完成移動(dòng)應(yīng)用功能性錯(cuò)誤的檢測。

3、實(shí)現(xiàn)本發(fā)明目的的具體技術(shù)方案是:

4、一種基于多探索策略的移動(dòng)應(yīng)用功能性質(zhì)測試方法,包括以下步驟:

5、步驟1:分析被測移動(dòng)應(yīng)用功能特性和測試目標(biāo),使用軟件功能性質(zhì)描述語言定義被測移動(dòng)應(yīng)用的功能性質(zhì)集合,每個(gè)功能性質(zhì)包括前置條件p、交互場景i和后置條件q;

6、步驟2:計(jì)算功能性質(zhì)集合的前置條件并集∪p,設(shè)置最大測試執(zhí)行時(shí)長、最大執(zhí)行事件個(gè)數(shù),選擇探索策略,若選擇隨機(jī)探索策略,則執(zhí)行步驟3;若選擇主路徑引導(dǎo)策略,則根據(jù)前置條件p,定義一個(gè)用戶事件序列作為主路徑,繼續(xù)執(zhí)行步驟4;

7、步驟3:使用隨機(jī)探索策略生成事件序列,執(zhí)行性質(zhì)檢測,記錄對應(yīng)的測試結(jié)果和用戶界面截圖,直到達(dá)到最大測試執(zhí)行時(shí)間,執(zhí)行步驟5;

8、步驟4:使用主路徑引導(dǎo)策略生成事件序列,執(zhí)行性質(zhì)檢測,記錄對應(yīng)的測試結(jié)果和用戶界面截圖,直到達(dá)到最大測試執(zhí)行時(shí)間,執(zhí)行步驟5;

9、步驟5:基于測試結(jié)果和用戶界面截圖,自動(dòng)生成被測移動(dòng)應(yīng)用的缺陷報(bào)告。

10、進(jìn)一步,所述步驟3,具體包括如下步驟:

11、步驟a1:判斷是否達(dá)到最大測試執(zhí)行時(shí)間,若達(dá)到則結(jié)束測試,否則判斷是否達(dá)到最大事件個(gè)數(shù),如沒有達(dá)到,獲取當(dāng)前被測移動(dòng)應(yīng)用狀態(tài),繼續(xù)步驟a2;如果達(dá)到最大事件個(gè)數(shù),則重啟移動(dòng)應(yīng)用;

12、步驟a2:判斷當(dāng)前被測移動(dòng)應(yīng)用狀態(tài)是否滿足一個(gè)或多個(gè)前置條件p;若沒有任何前置條件滿足或者不進(jìn)行性質(zhì)檢測,則繼續(xù)執(zhí)行步驟a3;否則,執(zhí)行交互場景i中定義的事件序列,判斷后置條件q是否滿足,返回步驟a1;

13、步驟a3:使用外部用戶界面交互工具分析當(dāng)前界面狀態(tài)獲取可執(zhí)行事件列表,從可以執(zhí)行的事件列表中隨機(jī)選擇一項(xiàng)事件,并發(fā)送給被測移動(dòng)應(yīng)用執(zhí)行,返回步驟a1。

14、進(jìn)一步,所述步驟4,具體包括如下步驟:

15、步驟b1:將主路徑中的每個(gè)事件ei發(fā)送到被測移動(dòng)應(yīng)用,得到主路徑的狀態(tài)序列s=[s0,s1,s2,……,sn],從而使被測移動(dòng)應(yīng)用到達(dá)滿足前置條件p的狀態(tài)sn;

16、步驟b2:判斷是否達(dá)到最大測試執(zhí)行時(shí)間,若達(dá)到則結(jié)束測試,否則按照s=[s0,s1,s2,……,sn]倒序探索移動(dòng)應(yīng)用程序;若s中的所有狀態(tài)被探索完畢,則初始化被測移動(dòng)應(yīng)用;否則,按倒序關(guān)系取出一個(gè)未被探索的狀態(tài)si,發(fā)送對應(yīng)的前序事件序列[e1,e2,……,ei],使得被測移動(dòng)應(yīng)用到達(dá)主路徑狀態(tài)si,繼續(xù)步驟b3;

17、步驟b3:以狀態(tài)si作為探索被測移動(dòng)應(yīng)用的起始狀態(tài),判斷當(dāng)前已執(zhí)行事件個(gè)數(shù)是否達(dá)到最大執(zhí)行事件個(gè)數(shù),如沒有達(dá)到,獲取當(dāng)前被測移動(dòng)應(yīng)用狀態(tài),繼續(xù)步驟b4;如果達(dá)到,則執(zhí)行b6;

18、步驟b4:判斷當(dāng)前被測移動(dòng)應(yīng)用狀態(tài)是否滿足一個(gè)或多個(gè)前置條件p;若沒有任何前置條件滿足或者不進(jìn)行性質(zhì)檢測,則繼續(xù)執(zhí)行步驟b5;否則,執(zhí)行交互場景i中定義的事件序列,判斷后置條件q是否滿足,返回步驟b3;

19、步驟b5:使用外部用戶界面交互工具分析當(dāng)前界面狀態(tài)獲取可執(zhí)行事件列表,從可以執(zhí)行的事件列表中隨機(jī)選擇一項(xiàng)事件,并發(fā)送給被測移動(dòng)應(yīng)用執(zhí)行,返回步驟b3;

20、步驟b6:判斷當(dāng)前狀態(tài)能否轉(zhuǎn)換為狀態(tài)sn,若能,則發(fā)送對應(yīng)的事件到被測移動(dòng)應(yīng)用,使得被測移動(dòng)應(yīng)用的狀態(tài)滿足前置條件;

21、步驟b7:檢查當(dāng)前狀態(tài)是否滿足前置條件,若滿足則進(jìn)行性質(zhì)測試;

22、步驟b8:重啟移動(dòng)應(yīng)用并返回步驟b2。

23、本發(fā)明的測試方法,有益效果在于:

24、本發(fā)明引入了一種基于多探索策略的移動(dòng)應(yīng)用功能性質(zhì)的測試技術(shù),用于驗(yàn)證移動(dòng)應(yīng)用程序的功能正確性。本發(fā)明可以有效且廣泛的測試移動(dòng)應(yīng)用的功能性錯(cuò)誤,提高移動(dòng)應(yīng)用的健壯性和可靠性。

25、為了更高效地探索并測試移動(dòng)應(yīng)用的功能性質(zhì),本發(fā)明設(shè)計(jì)了兩種ui探索策略,隨機(jī)探索和主路徑引導(dǎo)探索策略。具體來說,隨機(jī)探索策略在廣闊的探索空間中隨機(jī)探索應(yīng)用程序。主路徑引導(dǎo)探索策略的靈感來自手動(dòng)測試的典型過程(測試人員通常遵循從應(yīng)用程序入口到目標(biāo)應(yīng)用程序功能的主路徑進(jìn)行功能測試)。若使用該探索策略,用戶可以在指定被測移動(dòng)應(yīng)用功能性質(zhì)的過程中同時(shí)完成該性質(zhì)對應(yīng)的主路徑的定義,從而可以有效地引導(dǎo)應(yīng)用程序的探索過程,沿著主路徑探索其它臨近路徑,以更有效地驗(yàn)證移動(dòng)應(yīng)用功能的正確性。



技術(shù)特征:

1.一種基于多探索策略的移動(dòng)應(yīng)用功能性質(zhì)測試方法,其特征在于,包括以下步驟:


技術(shù)總結(jié)
本發(fā)明公開了一種基于多探索策略的移動(dòng)應(yīng)用功能性質(zhì)測試方法,本方法首先通過移動(dòng)應(yīng)用軟件功能性質(zhì)描述語言對被測移動(dòng)應(yīng)用的一個(gè)或多個(gè)功能性質(zhì)進(jìn)行定義,然后通過兩種探索策略測試被測移動(dòng)應(yīng)用的性質(zhì)是否被違反。隨機(jī)探索策略生成隨機(jī)事件在更廣泛的圖形用戶界面狀態(tài)空間中進(jìn)行探索;主路徑引導(dǎo)探索策略需要定義一條沿著移動(dòng)應(yīng)用程序入口到達(dá)目標(biāo)移動(dòng)應(yīng)用性質(zhì)前置條件的主路徑用于指導(dǎo)后續(xù)的移動(dòng)應(yīng)用探索過程。探索和測試的整個(gè)過程中,記錄性質(zhì)測試結(jié)果和過程中記錄的界面截圖。最終,系統(tǒng)自動(dòng)生成移動(dòng)應(yīng)用性質(zhì)的缺陷報(bào)告。本發(fā)明用于驗(yàn)證移動(dòng)應(yīng)用程序的功能正確性,可以有效且廣泛的測試移動(dòng)應(yīng)用的功能性錯(cuò)誤,提高移動(dòng)應(yīng)用的健壯性和可靠性。

技術(shù)研發(fā)人員:熊一衡,沈祥臣,蘇亭,王玨,孫靜翎,蒲戈光
受保護(hù)的技術(shù)使用者:華東師范大學(xué)
技術(shù)研發(fā)日:
技術(shù)公布日:2025/1/2
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
宣恩县| 七台河市| 青冈县| 凯里市| 满洲里市| 隆回县| 改则县| 保德县| 永顺县| 姚安县| 新泰市| 西华县| 察哈| 兴海县| 九龙县| 始兴县| 明星| 钦州市| 东宁县| 理塘县| 克拉玛依市| 连云港市| 温泉县| 延吉市| 普安县| 二连浩特市| 碌曲县| 昭苏县| 开江县| 盐边县| 营口市| 大邑县| 砀山县| 徐水县| 九龙县| 阿巴嘎旗| 泰宁县| 湘潭市| 云霄县| 格尔木市| 鄯善县|