[發(fā)明專利]一種面向Android及其衍生系統(tǒng)的軟件操作錄制回放方法有效
| 申請?zhí)枺?/td> | 201010273044.3 | 申請日: | 2010-09-03 |
| 公開(公告)號: | CN101957793A | 公開(公告)日: | 2011-01-26 |
| 發(fā)明(設計)人: | 薛云志;陳軍成;鄭東陽;張亞峰;安朗 | 申請(專利權(quán))人: | 中國科學院軟件研究所 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 北京君尚知識產(chǎn)權(quán)代理事務所(普通合伙) 11200 | 代理人: | 馮藝東 |
| 地址: | 100190*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 面向 android 及其 衍生 系統(tǒng) 軟件 操作 錄制 回放 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及一種裝備Android及衍生系統(tǒng)設備上的記錄回放方法,涉及用戶界面自動化、軟件測試等領(lǐng)域,屬于軟件工程領(lǐng)域。?
背景技術(shù)
Android系統(tǒng)是Google公司推出的一款Linux操作系統(tǒng)上的應用系統(tǒng)框架平臺,此平臺采用Java語言開發(fā)。以此框架平臺為基礎,能方便地開發(fā)一些嵌入式軟件。隨著Android系統(tǒng)的不斷推廣,各大手機廠商以及相關(guān)嵌入式設備商以Android系統(tǒng)為基礎定制出適合各自產(chǎn)品的Android的衍生系統(tǒng)。Android系統(tǒng)現(xiàn)在的最新版本為2.1。?
在此背景下,針對Android及衍生系統(tǒng)平臺上的軟件測試的研究與開發(fā)也逐漸深入,但是目前針對此類平臺上的軟件黑盒測試現(xiàn)在還局限于手工測試,沒有合適的測試工具。針對此問題,需要對Android及衍生系統(tǒng)平臺上的軟件操作進行記錄,在對軟件作相關(guān)修改后,可以利用記錄進行回放以測試軟件行為是否和修改前一致。?
發(fā)明內(nèi)容
本發(fā)明解決了現(xiàn)有技術(shù)中存在的問題,充分利用Android及衍生系統(tǒng)的特性,根據(jù)不同的使用情況以不同的方式完成操作的記錄,并根據(jù)記錄方式的不同完成相應的回放功能,以測試軟件行為是否和修改前一致。?
為完成上述發(fā)明目的,采用以下技術(shù)方案:?
一種面向Android及其衍生系統(tǒng)的軟件操作錄制回放方法,包括如下步驟:?
1)裝備Android及其衍生系統(tǒng)的設備端與PC端連接并通信;?
2)對設備端進行UI操作,設備端或PC端記錄UI操作指令及相應的程序狀態(tài)信息;?
3)PC端解析步驟2)中記錄的UI操作指令及相應的程序狀態(tài)信息,利用記錄的UI操作指令驅(qū)動設備端執(zhí)行UI操作,并將執(zhí)行后的程序狀態(tài)與記錄的相應的程序狀態(tài)進行比較,完成回放。?
所述步驟1)中設備端與PC端通過TCP/UDP/USB協(xié)議進行連接與通信;?
所述步驟1)中設備端與PC端連接采用客戶端/服務器端模式,設備端為服務器端,PC端為客戶端。?
所述步驟2)包括如下三個步驟:?
2-1)記錄服務器端起始點的狀態(tài);?
2-2)記錄UI操作指令以及相應的程序狀態(tài);?
2-3)記錄結(jié)束點的狀態(tài);?
其中,步驟2-2)設備端的UI操作有兩種方式,第一種是直接在設備端進行操作;第二種是通過PC端與設備端的通信將設備端當前畫面顯示在PC端虛擬屏幕,然后在PC端虛擬屏幕上操作,根據(jù)虛擬屏幕操作構(gòu)造相應的操作指令傳送給設備端的服務器程序,服務器程序按照操作指令驅(qū)動設備端執(zhí)行;?
對于第一種方式,在服務器端新建腳本文件,利用Android系統(tǒng)及衍生系統(tǒng)提供的getevent工具獲取操作的每一條指令并將其記錄在服務器端特定腳本文件中,當用戶通過客戶端插入檢測點時,服務器端將GUI信息插入服務器端特定的腳本文件中,記錄結(jié)束時,服務器端程序?qū)⒃O備端的腳本發(fā)送給客戶端程序;?
對于第二種方式,在PC端新建一腳本文件(腳本形式符合基本格式,能正確解析即可),在PC端構(gòu)造操作指令并記錄在腳本文件中。PC端虛擬屏幕和設備端界面保持同步,每次設備端操作執(zhí)行完成后的界面信息(包括所處界面所有關(guān)鍵UI的狀態(tài)信息如UI對象坐標、尺寸等)都通過服務器端程序發(fā)送給客戶端程序并在客戶端進行重繪,客戶端程序?qū)UI信息插入到腳本文件中。?
上述步驟中的腳本文件的基本格式為:?
指令序列;?
Checkpoint;?
程序狀態(tài)信息;?
指令序列;?
Checkpoint;?
程序狀態(tài)信息;?
程序結(jié)束時狀態(tài)信息;?
對于直接在設備端進行UI操作的輸入方式而言,其指令序列中的每條指令格式如:/dev/input/event0:0001?001e?00000001所示,/dev/input/event0表示設備;后面三個十六進制數(shù)分別表示指令類型、鍵碼、鍵值。?
對于在客戶端(PC端)虛擬屏幕輸入UI操作而言,其指令序列中的每條指令格式為:?
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中國科學院軟件研究所,未經(jīng)中國科學院軟件研究所許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201010273044.3/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 一種Android設備之間遠程桌面控制的方法
- 一種Android程序的執(zhí)行路徑的還原方法
- 基于ANCS協(xié)議兼容多平臺的通知消息獲取方法
- 基于字節(jié)碼插樁的Android程序監(jiān)控系統(tǒng)及方法
- 一種減少Android設備功耗的優(yōu)化方法及裝置
- 一種縮短無屏Android設備開機啟動時間的設置方法
- 一種基于Android雙系統(tǒng)的系統(tǒng)間通知同步方法
- 基于移動操作系統(tǒng)的Android兼容層實現(xiàn)方法和系統(tǒng)
- 一種Android智能設備APK安全管控方法
- 一種應用程序開發(fā)中創(chuàng)建Android庫模塊依賴關(guān)系的方法及裝置





