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

基于安卓操作系統(tǒng)的業(yè)務(wù)流程錄制-回放方法及系統(tǒng)的制作方法

文檔序號(hào):8258327閱讀:771來(lái)源:國(guó)知局
基于安卓操作系統(tǒng)的業(yè)務(wù)流程錄制-回放方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及⑶I (Graphical User Interface,圖形用戶界面)錄制-回放領(lǐng)域,特 別是涉及一種基于安卓操作系統(tǒng)的業(yè)務(wù)流程錄制-回放方法及系統(tǒng)。
【背景技術(shù)】
[0002] Gn錄制-回放自動(dòng)化測(cè)試技術(shù)是自動(dòng)化測(cè)試的一個(gè)分支,是一種黑盒自動(dòng)化測(cè) 試技術(shù)。測(cè)試人員無(wú)需關(guān)注底層代碼實(shí)現(xiàn),從而避免了不同語(yǔ)言編程帶來(lái)的測(cè)試?yán)щy。
[0003] 在Windows和Linux平臺(tái)上,目前已經(jīng)有很多基于錄制-回放技術(shù)的⑶I測(cè)試 工具,如 HP 的 QuickTest Professional,IBM 的 Rational Functional Tester,開源工具 Selenium等。但由于Android (安卓)安全架構(gòu)的存在,Windows和Linux上的錄制回放技 術(shù)無(wú)法直接應(yīng)用到Android平臺(tái)上,同時(shí)也加大了錄制-回放技術(shù)的實(shí)現(xiàn)難度。
[0004] 在Android平臺(tái)上,到現(xiàn)在為止還沒有成熟的⑶I錄制技術(shù),各類⑶I回放工具均 是通過(guò)解析并執(zhí)行軟件工程師編寫的腳本進(jìn)行回放,并沒有形成Android平臺(tái)上錄制-回 放的一體化,從而導(dǎo)致GUI回放技術(shù)很難應(yīng)用于軟件自動(dòng)化測(cè)試領(lǐng)域之外的其他領(lǐng)域中。
[0005] 目前,GUI回放技術(shù)主要是以腳本為依據(jù)往Android操作系統(tǒng)或應(yīng)用程序本身注 入點(diǎn)擊、長(zhǎng)按、滑動(dòng)等事件來(lái)達(dá)到控制應(yīng)用程序自動(dòng)運(yùn)行的目的。然而,大多數(shù)Android應(yīng) 用程序會(huì)從外存或通過(guò)網(wǎng)絡(luò)加載數(shù)據(jù),當(dāng)同一腳本在兩次執(zhí)行時(shí)應(yīng)用程序從外存中或通過(guò) 網(wǎng)絡(luò)加載的數(shù)據(jù)發(fā)生了變化,并且這種變化導(dǎo)致了應(yīng)用程序的界面邏輯在兩次腳本執(zhí)行過(guò) 程中有差異,此時(shí)就會(huì)出現(xiàn)同一腳本在多次執(zhí)行過(guò)程中GUI狀態(tài)不一致的情況。

【發(fā)明內(nèi)容】

[0006] 本發(fā)明要解決的技術(shù)問題是提供一種基于安卓操作系統(tǒng)的業(yè)務(wù)流程錄制-回放 方法及系統(tǒng),用以解決現(xiàn)有技術(shù)在GUI回放時(shí)同一腳本在多次執(zhí)行過(guò)程中GUI狀態(tài)不一致 的問題。
[0007] 為解決上述技術(shù)問題,本發(fā)明提供一種基于安卓操作系統(tǒng)的業(yè)務(wù)流程錄制-回放 方法,包括錄制方法和回放方法,
[0008] 所述錄制方法包括以下步驟:
[0009] A、當(dāng)外部應(yīng)用啟動(dòng)后,且檢測(cè)到用戶在界面進(jìn)行操作時(shí),采集并存儲(chǔ)動(dòng)作數(shù)據(jù);
[0010] B、當(dāng)外部應(yīng)用從外存或網(wǎng)絡(luò)加載數(shù)據(jù)后,根據(jù)加載的數(shù)據(jù)采集并存儲(chǔ)上下文數(shù) 據(jù);
[0011] 所述回放方法包括以下步驟:
[0012] C、加載動(dòng)作及上下文數(shù)據(jù);
[0013] D、選擇回放起始位置,并從所述起始位置開始進(jìn)行回放。
[0014] 進(jìn)一步,所述步驟A具體包括:
[0015] A1、外部應(yīng)用啟動(dòng)后初始化動(dòng)作采集代理,將當(dāng)前應(yīng)用顯示頁(yè)面信息告知?jiǎng)幼鞑?集代理;
[0016] A2、檢測(cè)到用戶在界面進(jìn)行操作時(shí),外部應(yīng)用將用戶動(dòng)作數(shù)據(jù)傳遞給動(dòng)作采集代 理;
[0017] A3、動(dòng)作采集代理將動(dòng)作數(shù)據(jù)格式化;
[0018] A4、調(diào)用動(dòng)作采集接口保存動(dòng)作數(shù)據(jù)。
[0019] 進(jìn)一步,所述動(dòng)作數(shù)據(jù)包括:頁(yè)面啟動(dòng)動(dòng)作數(shù)據(jù)、頁(yè)面退出動(dòng)作數(shù)據(jù)、單擊動(dòng)作數(shù) 據(jù)、長(zhǎng)按動(dòng)作數(shù)據(jù)、觸摸動(dòng)作數(shù)據(jù)和/或按鍵動(dòng)作數(shù)據(jù)。
[0020] 進(jìn)一步,所述步驟B具體包括:
[0021] B1、外部應(yīng)用將加載的數(shù)據(jù)傳遞給上下文采集代理;
[0022] B2、上下文采集代理將上下文數(shù)據(jù)格式化;
[0023] B3、調(diào)用上下文采集接口保存上下文數(shù)據(jù)。
[0024] 進(jìn)一步,所述上下文數(shù)據(jù)包括當(dāng)前運(yùn)行環(huán)境上下文對(duì)象、上下文標(biāo)識(shí)和Json格式 的上下文數(shù)據(jù)。
[0025] 進(jìn)一步,所述步驟C具體包括:
[0026] C1、外部應(yīng)用初始化回放控制代理,將當(dāng)前應(yīng)用顯示頁(yè)面的頁(yè)面控制對(duì)象交給回 放控制代理;
[0027] C2、啟動(dòng)動(dòng)作及上下文管理組件,加載并將動(dòng)作及上下文數(shù)據(jù)按照時(shí)間順序顯示。
[0028] 進(jìn)一步,所述步驟D具體包括:
[0029] D1、選擇一條動(dòng)作數(shù)據(jù)作為回放起始位置;
[0030] D2、啟動(dòng)回放組件,回放組件從選擇的起始動(dòng)作數(shù)據(jù)開始預(yù)加載動(dòng)作數(shù)據(jù);
[0031] D3、按時(shí)間順序?qū)⒉シ艛?shù)據(jù)逐條傳遞給回放控制代理;
[0032] D4、回放控制代理通過(guò)解析動(dòng)作數(shù)據(jù),生成頁(yè)面控制指令;
[0033] D5、回放控制代理通過(guò)頁(yè)面控制對(duì)象向頁(yè)面發(fā)出控制指令;
[0034]D6、頁(yè)面收到回放控制代理發(fā)出的控制指令,產(chǎn)生頁(yè)面響應(yīng)。
[0035] 進(jìn)一步,在所述步驟D4中,所述生成頁(yè)面控制指令包括生成單擊控制指令,具體 包括:
[0036] D411、從動(dòng)作數(shù)據(jù)中解析出單擊動(dòng)作發(fā)生的頁(yè)面控件ID號(hào);
[0037] D412、根據(jù)單擊動(dòng)作數(shù)據(jù)中的頁(yè)面控件ID號(hào)得到頁(yè)面控件對(duì)象;
[0038] D413、向所述控件對(duì)象的中心點(diǎn)發(fā)出"按下"指令;
[0039] D414、向所述控件對(duì)象的中心點(diǎn)發(fā)出"彈起"指令。
[0040] 進(jìn)一步,在所述步驟D4中,所述生成頁(yè)面控制指令包括生成觸摸控制指令,具體 包括:
[0041] D421、從動(dòng)作數(shù)據(jù)中解析出觸摸動(dòng)作發(fā)生處屏幕橫縱坐標(biāo);
[0042] D422、判斷當(dāng)前觸摸位置是否屬于頁(yè)面中任何控件所覆蓋區(qū)域,如果是,則轉(zhuǎn)步驟 D424;否則轉(zhuǎn)步驟D423;
[0043] D423、直接向頁(yè)面相應(yīng)位置發(fā)出觸摸指令,并結(jié)束;
[0044] D424、根據(jù)觸摸動(dòng)作數(shù)據(jù)中的頁(yè)面控件ID號(hào)得到頁(yè)面控件對(duì)象;
[0045] D425、向所述控件相應(yīng)位置發(fā)出觸摸指令。
[0046] 進(jìn)一步,在所述步驟D4中,所述生成頁(yè)面控制指令包括生成按鍵控制指令,具體 包括:
[0047] D431、從動(dòng)作數(shù)據(jù)中解析出按鍵編碼;
[0048] D432、向頁(yè)面發(fā)出按鍵編碼對(duì)應(yīng)的鍵盤按下指令;
[0049] D433、向頁(yè)面發(fā)出按鍵編碼對(duì)應(yīng)的鍵盤彈起指令。
[0050] 進(jìn)一步,所述回放方法還包括:E、在回放模式下,外部應(yīng)用從外存或網(wǎng)絡(luò)取數(shù)據(jù); 具體包括以下步驟:
[0051] E1、當(dāng)外部應(yīng)用需要從外存或網(wǎng)絡(luò)取數(shù)據(jù)時(shí),截獲外部應(yīng)用數(shù)據(jù)請(qǐng)求事件,轉(zhuǎn)為向 回放控制代理請(qǐng)求數(shù)據(jù);
[0052] E2、回放控制代理根據(jù)上下文唯一標(biāo)識(shí),通過(guò)回放控制接口向回放組件發(fā)出數(shù)據(jù) 查詢請(qǐng)求;
[0053] E3、回放組件根據(jù)上下文唯一標(biāo)識(shí)在數(shù)據(jù)庫(kù)中進(jìn)行查詢,將查詢到的上下文數(shù)據(jù) 從數(shù)據(jù)庫(kù)中取出,并傳遞給回放控制代理;
[0054] E4、回放控制代理向外部應(yīng)用返回上下文數(shù)據(jù);
[0055] E5、外部應(yīng)用根據(jù)回放控制代理返回的上下文數(shù)據(jù)產(chǎn)生頁(yè)面響應(yīng)。
[0056] 本發(fā)明還提供一種基于安卓操作系統(tǒng)的業(yè)務(wù)流程錄制-回放系統(tǒng),所述系統(tǒng)包括 數(shù)據(jù)層、服務(wù)層、業(yè)務(wù)層、接口層和外部代理;
[0057] 所述數(shù)據(jù)層,提供動(dòng)作信息和上下文信息的持久化存儲(chǔ);
[0058] 所述服務(wù)層,為所述業(yè)務(wù)層和接口層提供支持,包括動(dòng)作存取服務(wù)、上下文存取服 務(wù)、動(dòng)作及上下文聚合服務(wù)和回放控制服務(wù);
[0059] 所述業(yè)務(wù)層,為外部應(yīng)用提供直接可用的組件,包括動(dòng)作及上下文管理組件和回 放組件;
[0060] 所述接口層,為外部應(yīng)用提供動(dòng)作采集、上下文采集、回放控制和動(dòng)作及上下文管 理接口;
[0061] 所述外部代理,為外部應(yīng)用提供封裝好的動(dòng)作采集、上下文采集、回放控制代理, 外部應(yīng)用可直接通過(guò)所述外部代理實(shí)現(xiàn)動(dòng)作及上下文數(shù)據(jù)的采集和回放。
[0062] 進(jìn)一步,所述動(dòng)作信息包括動(dòng)作類型、操作控件的Resource ID、動(dòng)作發(fā)生的屏幕 坐標(biāo)、功能鍵編碼;所述上下文信息包括狀態(tài)標(biāo)識(shí)和上下文數(shù)據(jù)。
[0063] 進(jìn)一步,所述動(dòng)作存取服務(wù)對(duì)動(dòng)作數(shù)據(jù)做數(shù)據(jù)庫(kù)存取操作;所述上下文存取服務(wù) 對(duì)上下文數(shù)據(jù)做數(shù)據(jù)庫(kù)存取操作;所述動(dòng)作及上下文聚合服務(wù)通過(guò)解析動(dòng)作和上下文數(shù) 據(jù),去除、合并其中的冗余數(shù)據(jù);所述回放控制服務(wù)加載動(dòng)作和上下文數(shù)據(jù),保證回放的流 暢性。
[0064] 進(jìn)一步,外部應(yīng)用可直接啟動(dòng)所述動(dòng)作及上下文管理組件實(shí)現(xiàn)對(duì)動(dòng)作及上下文數(shù) 據(jù)的查詢和刪除操作;所述回放組件為外部應(yīng)用提供一個(gè)能夠播放動(dòng)作及上下文數(shù)據(jù)的專 用播放器,其功能包括播放、暫停、重放和變速播放。
[0065] 本發(fā)明有益效果如下:
[0066] 1.能夠完全重現(xiàn)⑶I狀態(tài)。本發(fā)明不僅能夠記錄用戶動(dòng)作,還能記錄應(yīng)用加載的 外部數(shù)據(jù),使得回放過(guò)程僅與已記錄下來(lái)的動(dòng)作、上下文數(shù)據(jù)以及錄制的應(yīng)用程序本身有 關(guān),從而保證了每次回放過(guò)程中⑶I狀態(tài)的一致性。
[0067] 2.實(shí)現(xiàn)錄制-回放一體化。本發(fā)明將錄制、回放功能集成后,使用者不用關(guān)心錄制 產(chǎn)生的中間數(shù)據(jù)格式,也不需要人工編寫回放控制腳本,在很大程度上減小了 Android平
當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
平罗县| 罗定市| 延吉市| 天峻县| 峨边| 丹凤县| 永丰县| 孟村| 师宗县| 常熟市| 明星| 疏附县| 阜南县| 若尔盖县| 大同市| 浦县| 蕉岭县| 临安市| 长阳| 伊春市| 航空| 宁津县| 阳山县| 贺兰县| 高邮市| 合作市| 盐城市| 钦州市| 宁化县| 太湖县| 浦江县| 高尔夫| 江西省| 丰顺县| 朝阳区| 丰镇市| 永川市| 天气| 陆川县| 金秀| 普安县|