[發(fā)明專利]一種基于應(yīng)用內(nèi)視覺挖掘的軟件測試用例生成方法有效
| 申請?zhí)枺?/td> | 202011371892.8 | 申請日: | 2020-11-30 |
| 公開(公告)號: | CN112559324B | 公開(公告)日: | 2023-07-07 |
| 發(fā)明(設(shè)計)人: | 錢巨;王巖 | 申請(專利權(quán))人: | 南京航空航天大學(xué) |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36;G06F8/34 |
| 代理公司: | 南京蘇高專利商標事務(wù)所(普通合伙) 32204 | 代理人: | 曹坤 |
| 地址: | 210016 江*** | 國省代碼: | 江蘇;32 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 應(yīng)用 視覺 挖掘 軟件 測試 生成 方法 | ||
本發(fā)明公開了一種基于應(yīng)用內(nèi)視覺挖掘的軟件測試用例生成方法。涉及計算機軟件開發(fā)領(lǐng)域,步驟為:首先,給定想要生成測試數(shù)據(jù)的輸入項;然后,對應(yīng)用程序進行界面探索,獲得界面遷移模型;對探索所得每一界面圖片做基于文字識別和自然語言處理的視覺挖掘,得到候選輸入數(shù)據(jù)類別與內(nèi)容;最后,匹配輸入項提示關(guān)鍵詞和候選輸入數(shù)據(jù)的類別,將匹配成功的候選數(shù)據(jù)內(nèi)容作為輸入項的測試數(shù)據(jù)。若匹配失敗,將輸入項分為身份類、數(shù)字類、自由類,分別利用字典匹配、按類型生成、隨機構(gòu)造字符串的方法生成測試數(shù)據(jù)。本發(fā)明運用計算機視覺算法和自然語言處理生成測試用例,可在非侵入式環(huán)境下使用,并且生成的測試用例數(shù)據(jù)更真實,更易觸發(fā)界面狀態(tài)變換,從而揭示更多錯誤。
技術(shù)領(lǐng)域
本發(fā)明涉及計算機軟件開發(fā)領(lǐng)域,具體涉及一種基于應(yīng)用內(nèi)視覺挖掘的軟件測試用例生成方法。
背景技術(shù)
測試用例在檢測程序中存在的缺陷方面有重要作用,一個高質(zhì)量的測試用例可以檢測到程序中不易被發(fā)現(xiàn)的缺陷,幫助識別和改進軟件質(zhì)量問題。但是在可視化測試場景下,主要從外部視覺信息出發(fā)來開展測試,依靠的只有界面圖像信息,此時測試用例的生成存在困難。
當前GUI應(yīng)用的測試用例生成方法主要有兩種。一是白盒測試方法,該方法要求待測系統(tǒng)的源代碼可以被訪問。例如,McMinn等人以待測系統(tǒng)源代碼為基礎(chǔ),對函數(shù)名稱、變量名稱等程序標識符進行分詞、去除停用詞等操作,得到搜索關(guān)鍵字,并利用搜索引擎通過網(wǎng)絡(luò)搜索的方式構(gòu)造測試用例。對于無法訪問待測系統(tǒng)源代碼的場景,該方法無法實施。另一種是基于運行時界面信息的黑盒測試方法。例如,Darab等人首先獲取頁面運行時結(jié)構(gòu)信息,從頁面結(jié)構(gòu)中提取出關(guān)于輸入項的描述標識符,最后從在線的正則表達式庫檢索獲取測試用例。盡管Darab沒有訪問系統(tǒng)源碼,但是對于無法得到頁面結(jié)構(gòu)信息的場景,該方法也無法正常使用。此外,還可以通過隨機方法構(gòu)造測試用例數(shù)據(jù),但是該方法生成的測試用例真實性較差,許多情況下無法驅(qū)動應(yīng)用程序有效執(zhí)行,錯誤檢測能力較弱。
發(fā)明內(nèi)容
針對上述問題,本發(fā)明提出一種基于應(yīng)用內(nèi)視覺挖掘的軟件測試用例生成方法。該方法能夠通過文字識別和自然語言處理從隨機獲得的界面圖片中抽取和挖掘可以作為輸入值的候選數(shù)據(jù),通過匹配輸入項和候選數(shù)據(jù)得到用以提供給輸入項的測試輸入值,最終生成測試用例;本發(fā)明從界面圖片出發(fā)來構(gòu)造具有較好真實性和檢錯能力的測試數(shù)據(jù),無需訪問待測系統(tǒng)內(nèi)部程序代碼或運行時信息,可用于非侵入式測試場合,相對已有方法生成測試數(shù)據(jù)的質(zhì)量高、適用范圍更廣。
本發(fā)明的技術(shù)方案是:一種基于應(yīng)用內(nèi)視覺挖掘的軟件測試用例生成方法,具體步驟包括如下:
步驟(1.1)、由用戶給定需要生成測試數(shù)據(jù)的輸入項,對其解析得到輸入項提示關(guān)鍵詞;
步驟(1.2)、對應(yīng)用程序進行隨機界面探索,得到待測應(yīng)用的界面遷移模型,從而反映從一個界面動作到達一個新界面狀態(tài)的關(guān)系;
步驟(1.3)、在所得界面遷移模型上進行視覺挖掘,獲取關(guān)于每張界面圖片中蘊含的候選輸入類別與輸入內(nèi)容,從而構(gòu)造由候選輸入類別與內(nèi)容構(gòu)成的數(shù)據(jù)池;
步驟(1.4)、按詞義相似度匹配輸入項提示關(guān)鍵詞和候選輸入數(shù)據(jù)的類別信息,將匹配成功的候選輸入內(nèi)容作為該輸入項的測試數(shù)據(jù)進行匹配。
進一步的,在步驟(1.1)中,由用戶給定需要生成測試數(shù)據(jù)的輸入項的具體操作方法如下:
(1.1.1)、由用戶給定想要生成測試數(shù)據(jù)的輸入項,每個輸入項用多元組,如下式所示:
Input=外部描述標簽,內(nèi)部提示文字,提示圖標
式中,外部描述標簽表示輸入框周邊的輸入提示文字信息,內(nèi)部提示文字表示輸入框里面的提示文字,提示圖標表示輸入框內(nèi)部或周邊出現(xiàn)的關(guān)鍵圖標信息;
(1.1.2)、對輸入項多元組信息進行解析得到提示關(guān)鍵詞;其具體操作如下:
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于南京航空航天大學(xué),未經(jīng)南京航空航天大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011371892.8/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 在線應(yīng)用平臺上應(yīng)用間通信的回調(diào)應(yīng)答方法、應(yīng)用及在線應(yīng)用平臺
- 應(yīng)用使用方法、應(yīng)用使用裝置及相應(yīng)的應(yīng)用終端
- 應(yīng)用管理設(shè)備、應(yīng)用管理系統(tǒng)、以及應(yīng)用管理方法
- 能力應(yīng)用系統(tǒng)及其能力應(yīng)用方法
- 應(yīng)用市場的應(yīng)用搜索方法、系統(tǒng)及應(yīng)用市場
- 使用應(yīng)用的方法和應(yīng)用平臺
- 應(yīng)用安裝方法和應(yīng)用安裝系統(tǒng)
- 使用遠程應(yīng)用進行應(yīng)用安裝
- 應(yīng)用檢測方法及應(yīng)用檢測裝置
- 應(yīng)用調(diào)用方法、應(yīng)用發(fā)布方法及應(yīng)用發(fā)布系統(tǒng)





