操作重現方法及裝置的制造方法
【專利摘要】本發明適用于計算機技術領域,提供了一種操作重現方法及裝置。所述方法包括:獲取初始事件信息,所述初始事件信息包括事件發生的時間;根據事件發生的時間對事件進行分組;將分組后的事件對應的指定事件信息依時間順序按照各組和各事件的時間間隔寫入打開的設備文件,并執行所述設備文件以重現錄制的操作。通過上述方法能夠使得重現的操作不變形。
【專利說明】
操作重現方法及裝置
技術領域
[0001 ]本發明實施例屬于計算機技術領域,尤其涉及一種操作重現方法及裝置。
【背景技術】
[0002]在用戶對智能終端(如手機)進行測試時,智能終端需要錄制用戶的操作,并重復錄制的操作。
[0003]現有的操作錄制及重現方法中,在獲取操作事件后,對每一個事件(每個操作可能有多個事件組成)都打開一次設備文件,再在打開的設備文件中寫入數據,由于每次在設備文件寫入數據時都需要打開一次設備文件,因此使得寫入一組操作的數據的時間過長,進而使得發送的事件發生延遲,從而導致操作變形,例如,使得短按操作變形為長按操作,雙擊操作變形為多個單擊等。
【發明內容】
[0004]本發明實施例提供了一種操作重現方法及裝置,旨在解決現有方法中,每次在設備文件寫入數據時都需要打開一次設備文件,因此使得寫入一組操作的數據的時間過長,進而使得發送的事件發生延遲,從而導致操作變形的問題。
[0005]本發明實施例是這樣實現的,一種操作重現方法,所述方法包括:
[0006]獲取初始事件信息,所述初始事件信息包括事件發生的時間;
[0007]根據事件發生的時間對事件進行分組;
[0008]將分組后的事件對應的指定事件信息依時間順序按照各組和各事件的時間間隔寫入打開的設備文件,并執行所述設備文件以重現錄制的操作。
[0009]本發明實施例的另一目的在于提供一種操作重現裝置,所述裝置包括:
[0010]初始事件信息獲取單元,用于獲取初始事件信息,所述初始事件信息包括事件發生的時間;
[0011 ]事件分組單元,用于根據事件發生的時間對事件進行分組;
[0012]操作重現單元,用于將分組后的事件對應的事件信息依時間順序按照各組和各事件的時間間隔寫入打開的設備文件,并執行所述設備文件以重現錄制的操作。
[0013]在本發明實施例中,由于根據事件發生的時間對事件進行分組,使得劃分為一組的事件為同一操作對應的事件,且在打開一次設備文件時就寫入已分組的事件信息,因此,寫入一個操作對應的事件時無需多次打開設備文件,從而節省了時間,進而使得執行所述設備文件時能夠重現錄制的操作,而不會使得重現的操作發生變形。
【附圖說明】
[0014]圖1是本發明第一實施例提供的一種操作重現方法的流程圖;
[0015]圖2是本發明第二實施例提供的一種操作重現裝置的結構圖。
【具體實施方式】
[0016]為了使本發明的目的、技術方案及優點更加清楚明白,以下結合附圖及實施例,對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,并不用于限定本發明。
[0017]本發明實施例中,獲取初始事件信息,所述初始事件信息包括事件發生的時間,根據事件發生的時間對事件進行分組,將分組后的事件對應的指定事件信息依時間順序按照各組和各事件的時間間隔寫入打開的設備文件,并執行所述設備文件以重現錄制的操作。
[0018]為了說明本發明所述的技術方案,下面通過具體實施例來進行說明。
[0019]實施例一:
[0020]圖1示出了本發明第一實施例提供的一種操作重現方法的流程圖,詳述如下:
[0021 ]步驟Sll,獲取初始事件信息,所述初始事件信息包括事件發生的時間。
[0022]該步驟中,獲取初始事件信息,得到錄制的操作對應的初始事件信息,該初始事件信息包括事件發生的時間。
[0023]其中,所述步驟Sll具體包括:
[0024]Al、獲取至少兩種操作對應的初始事件信息。其中,所述至少兩種操作對應的初始事件信息包括:事件的名稱、事件發生的時間、事件類型、事件的值以及對應的描述信息。其中,通過智能終端的系統提供的getevent獲取多種(至少兩種)操作對應的初始事件信息。這里“對應的描述信息”是指“事件發生的時間、事件類型、事件的值”對應的描述信息。例如,事件發生的時間的描述信息為“time”,事件類型的描述信息為“type”等。
[0025]或者,
[0026]A2、獲取一種操作對應的初始事件信息。其中,所述一種操作對應的初始事件信息包括:事件發生的時間、事件類型、事件的值。需要指出的是,同一種操作對應的初始事件信息可能為一個事件的初始事件信息,也可能為多個事件的初始事件信息。
[0027]可選地,在獲取初始事件信息之后,包括:
[0028]對獲取的初始事件信息進行處理。比如,刪除獲取的至少兩種操作對應的初始事件信息中的事件的名稱,以獲得事件對應的指定事件信息;或者,將事件發生的時間和事件類型對應的描述信息增加至獲取的一種操作對應的初始事件信息,以獲得事件對應的指定事件信息。其中,所述事件對應的指定事件信息包括:事件發生的時間、事件類型、事件的值以及對應的描述信息的事件信息。
[0029]其中,除了事件發生的時間、事件類型、事件的值以及對應的描述信息,所述事件對應的指定事件信息還可包括:設備信息、事件對應的代碼等。對獲取的初始事件信息進行處理即為刪除或增加初始事件信息的相應信息,以使得處理后的事件信息符合條件。
[0030]可選地,由于一個操作通過按鍵或屏幕發出后,還會觸發智能終端中其他器件的響應,而用戶通常僅關注按鍵或屏幕等操作類型對應的事件信息,因此,為了獲得更精準的操作重現,所述對獲取的初始事件信息進行處理還可以包括:
[0031 ]刪除非按鍵或非屏幕操作對應的事件信息。
[0032]步驟S12,根據事件發生的時間對事件進行分組。
[0033]可選地,由于獲取的事件信息的格式與后續寫入設備文件的事件信息的格式要求不同,因此,為了能夠將獲取的事件信息順利寫入設備文件,在所述步驟S12之前,包括:
[0034]將獲取的初始事件信息中的數據格式轉換為指定的格式。其中,指定的格式是指能夠寫入設備文件的事件信息對應的格式。
[0035]可選地,所述步驟SI 2具體包括:
[0036]B1、根據事件發生的時間計算相鄰事件之間的時間間隔。具體地,將兩個相鄰事件對應的事件發生的時間相減,得到的絕對值為兩個相鄰事件之間的時間間隔。
[0037]B2、在當前事件與上一個事件之間的時間間隔小于指定的時間間隔時,將所述當前事件劃分為包括所述上一個事件所在的大組。其中,指定的時間間隔可設定為10ms(毫秒)。例如,假設當前事件為事件A,事件A的上一個事件為事件B,且事件B劃分到X組,若事件A和事件B的時間間隔小于指定的時間間隔,則也將事件A劃分到X組。
[0038]B3、在當前事件與上一個事件之間的時間間隔大于或等于指定的時間間隔時,將所述當前事件劃分為不包括所述上一個事件的大組。例如,假設當前事件為事件A,事件A的上一個事件為事件B,且事件B劃分到X組,若事件A和事件B的時間間隔大于或等于指定的時間間隔,則將事件A劃分到非X組,例如劃分到Y組。
[0039]進一步地,為了避免劃分為同一組的事件量過大,所述B2具體包括:
[0040]B21、在當前事件與上一個事件之間的時間間隔小于指定的時間間隔時,判斷所述大組的事件量是否小于指定的最大事件量。這里的事件量是指一個組中包括的事件數量。
[0041]B22、在所述大組的事件量小于指定的最大事件量時,則將所述大組劃分為至少兩個小組,使得各小組的事件量小于最大事件量。
[0042]當然,在需要將大組劃分為至少兩個小組時,可使劃分后的小組的事件量更平均,以避免出現問題。例如,假設最大事件量為30,需要對70個事件進行劃分,則為了使得劃分后的小組的事件量更平均,則劃分后的小組的事件量可以不分成30,30,10,可分成25,25,20,以避免太接近最大事件量而出現的問題。
[0043]步驟S13,將分組后的事件對應的指定事件信息依時間順序按照各組和各事件的時間間隔寫入打開的設備文件,并執行所述設備文件以重現錄制的操作。
[0044]該步驟中,通過自定義的sendevent讀取并打開每組事件的設備文件,并在打開設備文件時按順序連續寫入同一組的事件,以便操作能夠連貫順利地完成,防止操作發生變形。
[0045]可選地,所述步驟SI 3具體包括:
[0046]Cl、將不同大組的事件按照預設的組間的時間間隔寫入打開的設備文件,并執行所述設備文件以重現錄制的操作。其中,預設的組間的時間間隔可為固定的時間間隔,也可為相鄰兩組的時間間隔與延遲時間間隔相加后得到的時間間隔。該相鄰兩組的時間間隔是指當前組的第一個事件的事件發生的時間與上一個組的最后一個事件的事件發生的時間的差的絕對值,延遲時間間隔可根據實際情況設置,例如,設置為500ms等。由于不同大組內的事件通常為不同操作對應的事件,因此,將不同大組的事件按照預設的組間的時間間隔寫入打開的設備文件能夠更好地區分兩組的事件,避免重現的操作發生混淆。
[0047]C2、將同一大組內不同小組按照各小組相鄰的事件的時間間隔寫入打開的設備文件,并執行所述設備文件以重現錄制的操作。
[0048]當然,若操作有N個,則需重復執行步驟S12和步驟S13,直到N組事件全部執行完,N大于等于2。
[0049]可選地,為了對重現的操作進行壓力測試,可預設循環次數,循環執行步驟S12和步驟S13,判斷每次執行步驟S12和步驟S13重現的操作是否相同,若相同,則判定本次操作重新測試通過。
[0050]本發明第一實施例中,獲取初始事件信息,根據事件發生的時間對事件進行分組,將分組后的事件對應的指定事件信息依時間順序按照各組和各事件的時間間隔寫入打開的設備文件,并執行所述設備文件以重現錄制的操作。由于根據事件發生的時間對事件進行分組,使得劃分為一組的事件為同一操作對應的事件,且在打開一次設備文件時就寫入已分組的事件信息,因此,寫入一個操作對應的事件時無需多次打開設備文件,從而節省了時間,進而使得執行所述設備文件時能夠重現錄制的操作,而不會使得重現的操作發生變形。
[0051]應理解,在本發明實施例中,上述各過程的序號的大小并不意味著執行順序的先后,各過程的執行順序應以其功能和內在邏輯確定,而不應對本發明實施例的實施過程構成任何限定。
[0052]實施例二:
[0053]圖2示出了本發明第二實施例提供的一種操作重現裝置的結構圖,該操作重現裝置可用在智能終端中,該智能終端可以包括經無線接入網RAN與一個或多個核心網進行通信的用戶設備,該用戶設備可以是移動電話(或稱為“蜂窩”電話)、具有移動設備的計算機等,例如,用戶設備還可以是便攜式、袖珍式、手持式、計算機內置的或者車載的移動裝置,它們與無線接入網交換語音和/或數據。又例如,該移動設備可以包括智能手機、平板電腦、個人數字助理PDA、銷售終端POS或車載電腦等。為了便于說明,僅示出了與本發明實施例相關的部分。
[0054]該操作重現裝置包括:初始事件信息獲取單元21、事件分組單元22、操作重現單元
23。其中:
[0055]初始事件信息獲取單元21,用于獲取初始事件信息,所述初始事件信息包括事件發生的時間。
[0056]其中,所述初始事件信息獲取單元21包括:
[0057]多操作信息獲取模塊,用于獲取至少兩種操作對應的初始事件信息。其中,所述至少兩種操作對應的初始事件信息包括:事件的名稱、事件發生的時間、事件類型、事件的值以及對應的描述信息。
[0058]部分操作信息獲取模塊,用于獲取一種操作對應的初始事件信息。其中,所述一種操作對應的初始事件信息包括:事件發生的時間、事件類型、事件的值。需要指出的是,同一種操作對應的初始事件信息可能為一個事件的初始事件信息,也可能為多個事件的初始事件信息。
[0059]可選地,該操作重現裝置包括:
[0060]初始事件信息處理單元,用于刪除獲取的至少兩種操作對應的初始事件信息中的事件的名稱,以獲得事件對應的指定事件信息;或者,用于將事件發生的時間和事件類型對應的描述信息增加至獲取的一種操作對應的初始事件信息,以獲得事件對應的指定事件信息。
[0061]其中,所述事件對應的指定事件信息包括:事件發生的時間、事件類型、事件的值以及對應的描述信息的事件信息。
[0062]可選地,由于一個操作通過按鍵或屏幕發出后,還會觸發智能終端中其他器件的響應,而用戶通常僅關注按鍵或屏幕等操作類型對應的事件信息,因此,為了獲得更精準的操作重現,所述操作重現裝置還可以包括:
[0063]事件信息過濾單元,用于刪除非按鍵或非屏幕操作對應的事件信息。
[0064]事件分組單元22,用于根據事件發生的時間、事件類型以及事件對應的值對不同的事件進行分組。
[0065]可選地,由于獲取的事件信息的格式與后續寫入設備文件的事件信息的格式要求不同,因此,為了能夠將獲取的事件信息順利寫入設備文件,所述操作重現裝置還可以包括:
[0066]格式統一單元,用于將獲取的初始事件信息中的數據格式轉換為指定的格式。其中,指定的格式是指能夠寫入設備文件的事件信息對應的格式。
[0067]其中,所述事件分組單元22包括:
[0068]事件的時間間隔計算模塊,用于根據事件發生的時間計算相鄰事件之間的時間間隔。具體地,將兩個相鄰事件對應的事件發生的時間相減,得到的絕對值為兩個不同事件之間的時間間隔。
[0069]同一組事件劃分模塊,用于在當前事件與上一個事件之間的時間間隔小于指定的時間間隔時,將所述當前事件劃分為包括所述上一個事件所在的大組。其中,指定的時間間隔可設定為I OOms (毫秒)。
[0070]不同組事件劃分模塊,用于在當前事件與上一個事件之間的時間間隔大于或等于指定的時間間隔時,將所述當前事件劃分為不包括所述上一個事件的大組。
[0071]進一步地,為了避免劃分為同一組的事件量過大,所述同一組事件劃分模塊包括:
[0072]事件量比較模塊,用于判斷所述大組的事件量是否小于指定的最大事件量。這里的事件量是指一個組中包括的事件數量。
[0073]事件劃分模塊,用于在所述大組的事件量大于指定的最大事件量時,則將所述大組劃分為至少兩個小組,使得各小組的事件量小于最大事件量。
[0074]操作重現單元23,用于將分組后的事件對應的事件信息依時間順序按照各組和各事件的時間間隔寫入打開的設備文件,并執行所述設備文件以重現錄制的操作。
[0075]通過自定義的sendevent讀取并打開每組事件的設備文件,并在打開設備文件時按順序連續寫入同一組的事件,以便操作能夠連貫順利地完成,防止操作發生變形。
[0076]所述操作重現單元包括:
[0077]大組事件重現模塊,用于將不同大組的事件按照預設的組間的時間間隔寫入打開的設備文件,并執行所述設備文件以重現錄制的操作。其中,預設的組間的時間間隔可為固定的時間間隔,也可為相鄰兩組的時間間隔與延遲時間間隔相加后得到的時間間隔。該相鄰兩組的時間間隔是指當前組的第一個事件的事件發生的時間與上一個組的最后一個事件的事件發生的時間的差的絕對值,延遲時間間隔可根據實際情況設置,例如,設置為500ms 等。
[0078]小組事件重現模塊,用于將同一大組內不同小組按照各小組相鄰的事件的時間間隔寫入打開的設備文件,并執行所述設備文件以重現錄制的操作。
[0079]當然,若操作有N個,則需重復執行事件分組單元22和操作重現單元23,直到N組事件全部執行完,N大于等于2。
[0080]可選地,為了對重現的操作進行壓力測試,可預設循環次數,循環執行事件分組單元22和操作重現單元23,判斷每次執行事件分組單元22和操作重現單元23重現的操作是否相同,若相同,則判定本次操作重新測試通過。
[0081]本發明第二實施例中,由于根據事件發生的時間對事件進行分組,使得劃分為一組的事件為同一操作對應的事件,且在打開一次設備文件時就寫入已分組的事件信息,因此,寫入一個操作對應的事件時無需多次打開設備文件,從而節省了時間,進而使得執行所述設備文件時能夠重現錄制的操作,而不會使得重現的操作發生變形。
[0082]本領域普通技術人員可以意識到,結合本文中所公開的實施例描述的各示例的單元及算法步驟,能夠以電子硬件、或者計算機軟件和電子硬件的結合來實現。這些功能究竟以硬件還是軟件方式來執行,取決于技術方案的特定應用和設計約束條件。專業技術人員可以對每個特定的應用來使用不同方法來實現所描述的功能,但是這種實現不應認為超出本發明的范圍。
[0083]所屬領域的技術人員可以清楚地了解到,為描述的方便和簡潔,上述描述的系統、裝置和單元的具體工作過程,可以參考前述方法實施例中的對應過程,在此不再贅述。
[0084]在本申請所提供的幾個實施例中,應該理解到,所揭露的系統、裝置和方法,可以通過其它的方式實現。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,例如多個單元或組件可以結合或者可以集成到另一個系統,或一些特征可以忽略,或不執行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機械或其它的形式。
[0085]所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網絡單元上。可以根據實際的需要選擇其中的部分或者全部單元來實現本實施例方案的目的。
[0086]另外,在本發明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。
[0087]所述功能如果以軟件功能單元的形式實現并作為獨立的產品銷售或使用時,可以存儲在一個計算機可讀取存儲介質中。基于這樣的理解,本發明的技術方案本質上或者說對現有技術做出貢獻的部分或者該技術方案的部分可以以軟件產品的形式體現出來,該計算機軟件產品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網絡設備等)執行本發明各個實施例所述方法的全部或部分步驟。而前述的存儲介質包括:U盤、移動硬盤、只讀存儲器(R0M,Read-0nly Memory)、隨機存取存儲器(RAM,Random Access Memory)、磁碟或者光盤等各種可以存儲程序代碼的介質。
[0088]以上所述,僅為本發明的【具體實施方式】,但本發明的保護范圍并不局限于此,任何熟悉本技術領域的技術人員在本發明揭露的技術范圍內,可輕易想到變化或替換,都應涵蓋在本發明的保護范圍之內。因此,本發明的保護范圍應所述以權利要求的保護范圍為準。
【主權項】
1.一種操作重現方法,其特征在于,所述方法包括: 獲取初始事件信息,所述初始事件信息包括事件發生的時間; 根據事件發生的時間對事件進行分組; 將分組后的事件對應的指定事件信息依時間順序按照各組和各事件的時間間隔寫入打開的設備文件,并執行所述設備文件以重現錄制的操作。2.根據權利要求1所述的方法,其特征在于,所述獲取初始事件信息,具體包括: 獲取至少兩種操作對應的初始事件信息; 或者, 獲取一種操作對應的初始事件信息。3.根據權利要求2所述的方法,其特征在于,在所述獲取初始事件信息之后,包括: 刪除獲取的至少兩種操作對應的初始事件信息中的事件的名稱,以獲得事件對應的指定事件信息; 或者, 將事件發生的時間和事件類型對應的描述信息增加至獲取的一種操作對應的初始事件ig息,以獲得事件對應的指定事件信息。4.根據權利要求1至3任一項所述的方法,其特征在于,所述根據事件發生的時間對事件進行分組,具體包括: 根據事件發生的時間計算相鄰事件之間的時間間隔; 在當前事件與上一個事件之間的時間間隔小于指定的時間間隔時,將所述當前事件劃分為包括所述上一個事件所在的大組; 在當前事件與上一個事件之間的時間間隔大于或等于指定的時間間隔時,將所述當前事件劃分為不包括所述上一個事件的大組。5.根據權利要求4所述的方法,其特征在于,所述在當前事件與上一個事件之間的時間間隔小于指定的時間間隔時,將所述當前事件劃分為包括所述上一個事件所在的大組,具體包括: 判斷所述大組的事件量是否小于指定的最大事件量; 若大于指定的最大事件量,則將所述大組劃分為至少兩個小組,使得各小組的事件量小于最大事件量。6.根據權利要求5所述的方法,其特征在于,所述將分組后的事件對應的指定事件信息依時間順序按照各組和各事件的時間間隔寫入打開的設備文件,并執行所述設備文件以重現錄制的操作具體包括: 將不同大組的事件按照預設的組間的時間間隔寫入打開的設備文件,并執行所述設備文件以重現錄制的操作; 將同一大組內不同小組按照各小組相鄰的事件的時間間隔寫入打開的設備文件,并執行所述設備文件以重現錄制的操作。7.一種操作重現裝置,其特征在于,所述裝置包括: 初始事件信息獲取單元,用于獲取初始事件信息,所述初始事件信息包括事件發生的時間; 事件分組單元,用于根據事件發生的時間對事件進行分組; 操作重現單元,用于將分組后的事件對應的事件信息依時間順序按照各組和各事件的時間間隔寫入打開的設備文件,并執行所述設備文件以重現錄制的操作。8.根據權利要求7所述的裝置,其特征在于,所述初始事件信息獲取單元包括: 多操作信息獲取模塊,用于獲取至少兩種操作對應的初始事件信息; 部分操作信息獲取模塊,用于獲取一種操作對應的初始事件信息。9.根據權利要求8所述的裝置,其特征在于,所述裝置包括: 初始事件信息處理單元,用于刪除獲取的至少兩種操作對應的初始事件信息中的事件的名稱,以獲得事件對應的指定事件信息;或者,用于將事件發生的時間和事件類型對應的描述信息增加至獲取的一種操作對應的初始事件信息,以獲得事件對應的指定事件信息。10.根據權利要求7至9任一項所述的裝置,其特征在于,所述事件分組單元包括: 事件的時間間隔計算模塊,用于根據事件發生的時間計算相鄰事件之間的時間間隔; 同一組事件劃分模塊,用于在當前事件與上一個事件之間的時間間隔小于指定的時間間隔時,將所述當前事件劃分為包括所述上一個事件所在的大組; 不同組事件劃分模塊,用于在當前事件與上一個事件之間的時間間隔大于或等于指定的時間間隔時,將所述當前事件劃分為不包括所述上一個事件的大組。11.根據權利要求10所述的裝置,其特征在于,所述同一組事件劃分模塊包括: 事件量比較模塊,用于判斷所述大組的事件量是否小于指定的最大事件量; 事件劃分模塊,用于在所述大組的事件量大于指定的最大事件量時,則將所述大組劃分為至少兩個小組,使得各小組的事件量小于最大事件量。12.根據權利要求10所述的裝置,其特征在于,所述操作重現單元包括: 大組事件重現模塊,用于將不同大組的事件按照預設的組間的時間間隔寫入打開的設備文件,并執行所述設備文件以重現錄制的操作; 小組事件重現模塊,用于將同一大組內不同小組按照各小組相鄰的事件的時間間隔寫入打開的設備文件,并執行所述設備文件以重現錄制的操作。
【文檔編號】H04M1/24GK106055442SQ201610380313
【公開日】2016年10月26日
【申請日】2016年5月31日
【發明人】周奇, 朱銀玲
【申請人】周奇