[發(fā)明專利]一種基于安卓應用層修改的有效測試框架在審
| 申請?zhí)枺?/td> | 201810769042.X | 申請日: | 2018-07-13 |
| 公開(公告)號: | CN108984407A | 公開(公告)日: | 2018-12-11 |
| 發(fā)明(設計)人: | 蔣炎巖;孟占帥;馬曉星;許暢;呂建 | 申請(專利權)人: | 南京大學 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 南京知識律師事務所 32207 | 代理人: | 張?zhí)K沛 |
| 地址: | 210023 江蘇*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 有效測試 應用層 測試工具 有效地 源碼 幫助 程序插樁模塊 設備管理模塊 事件生成模塊 應用程序狀態(tài) 應用運行過程 測試 安卓系統(tǒng) 測試技術 測試框架 程序測試 代碼模塊 獲取模塊 技術支撐 系統(tǒng)分層 移動應用 應用程序 框架本 原程序 構建 封裝 應用 開發(fā) 分析 | ||
1.一種基于安卓應用層修改的有效測試框架,包含設備管理模塊、事件生成模塊、應用程序狀態(tài)獲取模塊和程序插樁模塊,有效測試框架提供給使用者的接口,接口的規(guī)范以文檔的形式提供給開發(fā)者,開發(fā)者使用這些接口完成測試工具的實現(xiàn),而無需關注框架的實現(xiàn)細節(jié);其特征在于:
所述安卓應用層是指安卓應用在安卓系統(tǒng)運行的系統(tǒng)分層,安卓系統(tǒng)自底向上分為核心層、虛機層、框架層和應用程序?qū)樱@里的安卓應用層是指應用程序?qū)樱?/p>
所述安卓應用層修改是指修改安卓應用程序的源碼,在源碼中插入代碼模塊來幫助進行程序測試和分析,所插模塊在安卓應用運行過程中不影響原程序的正常運行;
所述測試框架用來幫助測試人員更方便有效地開發(fā)測試工具,封裝實現(xiàn)細節(jié),提供底層的技術支撐;
所述有效測試框架是指框架對于測試工具的構建是有效的,能夠提供足夠的支持,進而幫助開發(fā)者完成一些測試技術的實現(xiàn)。
2.根據(jù)權利要求1所述的基于安卓應用層修改的有效測試框架,其特征在于:
所述設備管理模塊能夠同時對多個安卓設備(模擬器或物理設備)資源進行管理,它不僅提供設備的回收和分配接口,而且能夠感知設備資源的狀態(tài),將測試和分析任務調(diào)度到可用的設備資源上;
所述設備資源的狀態(tài)是指安卓設備的狀態(tài),包括開機、關機以及忙碌和空閑,忙碌是指當前設備正在運行測試任務;
所述事件生成模塊負責UI事件和系統(tǒng)事件的生成和觸發(fā),UI事件用來模擬用戶的操作,而系統(tǒng)事件則可模擬其他外界環(huán)境和內(nèi)部狀態(tài)對于安卓應用的影響;
所述應用程序狀態(tài)獲取模塊獲取接口幫助測試工具讀取安卓應用的運行狀態(tài)數(shù)據(jù),包括程序是否正在運行,測試過程中的代碼覆蓋和應用的GUI布局信息;
所述程序插樁模塊負責對于目標應用的修改,添加的代碼模塊能夠完成對于目標應用的動態(tài)分析和測試,插樁過程在應用程序的中間碼展開。
3.根據(jù)權利要求2所述的基于安卓應用層修改的有效測試框架,其特征在于:
所述UI事件包括點擊、滑動、長按、雙擊和文本輸入等手勢操作,以及返回、HOME和菜單事件等導航事件,它們都屬于移動端常用的交互方式。這些事件對于遍歷一個常規(guī)的安卓應用是必不可少的,也被絕大部分的移動端設備所支持。UI事件均由模擬產(chǎn)生,而無需人工操作;
所述系統(tǒng)事件包括傳感器輸入、生命周期事件、電池和網(wǎng)絡變化以及內(nèi)部模塊通信產(chǎn)生的事件,這些事件均由內(nèi)部模擬產(chǎn)生,而無需真實的物理場景;
所述移動端設備是指常用的安卓設備,如手機;
所述傳感器是指移動端設備所攜帶的物理傳感設備;
所述生命周期事件是指安卓應用程序運行時Activity前后臺切換產(chǎn)生的內(nèi)部事件。
4.根據(jù)權利要求2所述的基于安卓應用層修改的有效測試框架,其特征在于:
所述對多個安卓設備資源的管理包括網(wǎng)絡端口管理,設備可用狀態(tài)的維護和當前運行的測試任務的管理。當設備處于空閑狀態(tài)時,管理模塊進行資源回收,而當有新的測試任務時,分配可用的設備資源。
5.根據(jù)權利要求2所述的基于安卓應用層修改的有效測試框架,其特征在于:
所述應用程序狀態(tài)獲取模塊幫助測試工具讀取安卓應用的運行狀態(tài)數(shù)據(jù),包括程序是否正常運行,測試過程中的代碼覆蓋和應用的GUI布局信息,以上狀態(tài)數(shù)據(jù)有助于對測試和分析過程作出評估;
所述代碼覆蓋是指測試工具在運行過程中執(zhí)行到的被測試程序的代碼信息,代碼覆蓋是測試過程一個很重要的度量指標,代碼覆蓋結果的獲取是通過對于被測試應用的修改來實現(xiàn)的;
所述GUI布局是指安卓設備的界面顯示信息,它由一些組件組成,這些組件注冊處理邏輯對用戶的UI事件進行響應,因此GUI布局信息對于安卓應用的測試是潛在可用的。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于南京大學,未經(jīng)南京大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810769042.X/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





