自動化測試文件的生成方法及裝置的制造方法
【專利摘要】本發(fā)明公開了一種自動化測試文件的生成方法及裝置,至少能夠解決通過傳統(tǒng)方式生成自動化測試文件時操作繁瑣且生成效率低下的技術問題。該自動化測試文件的生成方法包括:獲取用戶界面上的各個操作對象的屬性信息,以及獲取各個操作對象對應的操作類型;通過預設接口將所述各個操作對象的屬性信息及其對應的操作類型寫入預設的測試用例文件;根據所述測試用例文件生成對應的自動化測試文件。
【專利說明】
自動化測試文件的生成方法及裝置
技術領域
[0001] 本發(fā)明設及網絡通信技術領域,具體設及一種自動化測試文件的生成方法及裝 置。
【背景技術】
[0002] 為了實現(xiàn)移動終端的自動化測試效果,需要預先生成自動化測試文件,通過運行 該自動化測試文件實現(xiàn)自動測試的目的。
[0003] 在生成自動化測試文件的過程中,需要獲取用戶界面上的各個控件的控件信息, 例如,需要獲取控件的具體位置W及針對該控件執(zhí)行的具體操作,W便達到自動操作該控 件的目的。在傳統(tǒng)方式中,需要開發(fā)人員手動獲取控件的控件信息,并通過人工輸入的方式 將獲取到的控件信息填充到自動化測試文件的相應位置。
[0004] 由此可見,在上述過程中,需要開發(fā)人員進行大量的人工操作,尤其是在控件信息 較長時勢必會在人工輸入環(huán)節(jié)耗費大量的時間,導致自動化測試文件的生成效率低下。
【發(fā)明內容】
[0005] 鑒于上述問題,提出了本發(fā)明W便提供一種克服上述問題或者至少部分地解決上 述問題的自動化測試文件的生成方法及裝置。
[0006] 依據本發(fā)明的一個方面,提供了一種自動化測試文件的生成方法,包括:獲取用戶 界面上的各個操作對象的屬性信息,W及獲取各個操作對象對應的操作類型;通過預設接 口將所述各個操作對象的屬性信息及其對應的操作類型寫入預設的測試用例文件;根據所 述測試用例文件生成對應的自動化測試文件。
[0007] 可選地,所述獲取各個操作對象對應的操作類型具體包括:通過操作類型輸入接 口接收對應的操作類型,并獲取所述操作類型的類型標識W及執(zhí)行該類型操作的操作邏 輯;
[000引其中,所述操作類型包括W下內容中的一項或多項:長按類型、拖動類型、單擊類 型、雙擊類型W及用于模擬硬件按鈕的操作類型,其中,所述硬件按鈕包括W下中的一個或 多個:返回鍵、菜單鍵、音量鍵和電源鍵。
[0009] 可選地,所述獲取用戶界面上的各個操作對象的屬性信息具體包括:獲取所述用 戶界面的界面截圖,根據所述界面截圖獲取各個操作對象的屬性信息;
[0010] 其中,所述屬性信息包括W下內容中的一項或多項:操作對象的類型、操作對象的 標識、操作對象的文本、操作對象所屬的程序類W及定位操作對象的操作邏輯。
[0011] 可選地,所述定位操作對象的操作邏輯包括:通過預存的所述操作對象在用戶界 面上的坐標比例進行定位的操作邏輯;和/或,通過識別預存的操作對象的特征數據進行定 位的操作邏輯。
[0012] 可選地,所述測試用例文件為JAVA代碼文件。
[0013] 依據本發(fā)明的另一方面,提供了一種自動化測試文件的生成裝置,包括:第一獲取 模塊,適于獲取用戶界面上的各個操作對象的屬性信息;第二獲取模塊,適于獲取各個操作 對象對應的操作類型;寫入模塊,適于通過預設接口將所述各個操作對象的屬性信息及其 對應的操作類型寫入預設的測試用例文件;生成模塊,適于根據所述測試用例文件生成對 應的自動化測試文件。
[0014] 可選地,所述第二獲取模塊具體用于:通過操作類型輸入接口接收對應的操作類 型,并獲取所述操作類型的類型標識W及執(zhí)行該類型操作的操作邏輯;
[0015] 其中,所述操作類型包括W下內容中的一項或多項:長按類型、拖動類型、單擊類 型、雙擊類型W及用于模擬硬件按鈕的操作類型,其中,所述硬件按鈕包括W下中的一個或 多個:返回鍵、菜單鍵、音量鍵和電源鍵。
[0016] 可選地,所述第一獲取模塊具體用于:獲取所述用戶界面的界面截圖,根據所述界 面截圖獲取各個操作對象的屬性信息;
[0017] 其中,所述屬性信息包括W下內容中的一項或多項:操作對象的類型、操作對象的 標識、操作對象的文本、操作對象所屬的程序類W及定位操作對象的操作邏輯。
[0018] 可選地,所述定位操作對象的操作邏輯包括:通過預存的所述操作對象在用戶界 面上的坐標比例進行定位的操作邏輯;和/或,通過識別預存的操作對象的特征數據進行定 位的操作邏輯。
[0019] 可選地,所述測試用例文件為JAVA代碼文件。
[0020] 在本發(fā)明提供的自動化測試文件的生成方法及裝置中,能夠自動獲取用戶界面上 的各個操作對象的屬性信息W及對應的操作類型,并通過預設接口將各個操作對象的屬性 信息及其對應的操作類型自動寫入預設的測試用例文件。由此可見,在本發(fā)明實施例中,一 方面能夠通過預設的接口自動獲取到各個操作對象的屬性信息及其對應的操作類型;另一 方面能夠在預先定義好測試用例文件的前提下自動地將獲取到的信息填充到測試用例文 件中,W實現(xiàn)大幅提高自動化測試文件的生成速度的效果,顯著降低了開發(fā)人員的工作量。
[0021] 上述說明僅是本發(fā)明技術方案的概述,為了能夠更清楚了解本發(fā)明的技術手段, 而可依照說明書的內容予W實施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點能夠 更明顯易懂,W下特舉本發(fā)明的【具體實施方式】。
【附圖說明】
[0022] 通過閱讀下文優(yōu)選實施方式的詳細描述,各種其他的優(yōu)點和益處對于本領域普通 技術人員將變得清楚明了。附圖僅用于示出優(yōu)選實施方式的目的,而并不認為是對本發(fā)明 的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
[0023] 圖1示出了本發(fā)明一個實施例提供的自動化測試文件的生成方法的流程圖;
[0024] 圖2示出了本發(fā)明另一個實施例提供的自動化測試文件的生成方法的流程圖;
[0025] 圖3示出了本發(fā)明另一個實施例提供的自動化測試文件的生成裝置的結構圖。
【具體實施方式】
[0026] 下面將參照附圖更詳細地描述本公開的示例性實施例。雖然附圖中顯示了本公開 的示例性實施例,然而應當理解,可W W各種形式實現(xiàn)本公開而不應被運里闡述的實施例 所限制。相反,提供運些實施例是為了能夠更透徹地理解本公開,并且能夠將本公開的范圍 完整的傳達給本領域的技術人員。
[0027] 本發(fā)明實施例提供了一種自動化測試文件的生成方法及裝置,至少能夠解決通過 傳統(tǒng)方式生成自動化測試文件時操作繁瑣且生成效率低下的技術問題。
[0028] 圖1示出了本發(fā)明一個實施例提供的自動化測試文件的生成方法的流程圖。如圖1 所示,該方法包括W下步驟:
[0029] 步驟SllO:獲取用戶界面上的各個操作對象的屬性信息,W及獲取各個操作對象 對應的操作類型。
[0030] 其中,操作對象的屬性信息包括W下內容中的一項或多項:操作對象的類型、操作 對象的標識、操作對象的文本、操作對象所屬的程序類W及定位操作對象的操作邏輯。所述 操作類型包括W下內容中的一項或多項:長按類型、拖動類型、單擊類型、雙擊類型W及用 于模擬硬件按鈕的操作類型,其中,所述硬件按鈕包括W下中的一個或多個:返回鍵、菜單 鍵、首量鍵和電源鍵。
[0031] 步驟S120:通過預設接口將各個操作對象的屬性信息及其對應的操作類型寫入預 設的測試用例文件。
[0032] 其中,預設接口的作用在于將步驟SllO中獲取到的各個操作對象的屬性信息及其 對應的操作類型自動填充到測試用例文件中。其中,測試用例文件可W是自定義格式的文 件。
[0033] 步驟S130:根據測試用例文件生成對應的自動化測試文件。
[0034] 其中,測試用例文件和自動化測試文件可W為同一個文件,此時,直接在測試用例 文件的基礎上進行一定的修改操作即可得到自動化測試文件。或者,測試用例文件和自動 化測試文件也可W是兩個不同的文件,本發(fā)明對此不作限定。具體地,自動化測試文件可W 是JAVA等各種類型的腳本文件,也可W是其他各種類型的文件包。
[0035] 由此可見,在本實施例中,一方面能夠通過預設的接口自動獲取到各個操作對象 的屬性信息及其對應的操作類型;另一方面能夠在預先定義好測試用例文件的前提下自動 地將獲取到的信息填充到測試用例文件中,W實現(xiàn)大幅提高自動化測試文件的生成速度的 效果,顯著降低了開發(fā)人員的工作量。
[0036] 圖2示出了本發(fā)明另一個具體實施例提供的自動化測試文件的生成方法的流程 圖。本實施例可W基于多種自動化測試框架實現(xiàn),例如,可W基于Uiautomator和/或 Robotium測試框架、W及Monkey Runner測試框架等,本發(fā)明對具體的測試環(huán)境不做限定。 如圖2所示,該方法包括W下步驟:
[0037] 步驟S210:獲取用戶界面上的各個操作對象的屬性信息。
[0038] 其中,用戶界面是指待測試的產品的界面,由于待測試的產品通常包含主界面W 及通過主界面鏈接的多層界面,因此,需要分別針對多個用戶界面中的每一個執(zhí)行步驟 S210中的操作。用戶界面上的操作對象主要包括控件、按鈕、輸入框等。
[0039] 具體實現(xiàn)時,可W通過dump等方式獲取用戶界面的界面截圖,通過點擊界面截圖 上的特定位置獲取該位置上的操作對象的屬性信息。例如,可W自定義用于獲取用戶界面 上的各個操作對象的屬性信息的函數邏輯,在該函數中自定義用于查詢各項屬性信息的參 數,W實現(xiàn)屬性信息的自動獲取操作。另外,也可W利用基于化automator測試框架的第S 方工具化automatorViewer來自動獲取上述各個操作對象的屬性信息。
[0040] 具體地,獲取到的操作對象的屬性信息包括W下內容中的一項或多項:操作對象 的類型、操作對象的標識、操作對象的文本、操作對象所屬的程序類W及定位操作對象的操 作邏輯等。其中,操作對象的類型、操作對象的標識、操作對象的文本和/或操作對象所屬的 程序類可W直接通過點擊控件的方式進行獲取。另外,定位操作對象的操作邏輯可W通過 預設函數實現(xiàn),用于在用戶界面中查找到相應的操作對象并對該操作對象進行定位,W便 實現(xiàn)對該操作對象的操作。在本實施例中,可W通過如下兩種方式設定定位操作對象的操 作邏輯:
[0041] 在第一種實現(xiàn)方式中,通過預存的操作對象在用戶界面上的坐標比例進行定位。 例如,假設W用戶界面的左下角為坐標原點建立坐標系,并設定完整的用戶界面的右上角 的坐標為(1,1),相應地,用戶界面上的各個位置都可W通過對應的坐標比例進行表示,例 如,坐標點為(1/3,2/3)的位置處于整個用戶界面的左側偏上位置處。通過該種方式可W利 用操作對象在整個用戶界面中所處的坐標比例來確定操作對象的位置,與傳統(tǒng)的單純通過 具體坐標值來確定位置的方式相比準確性更高,不受屏幕分辨率變化的影響,且定位速度 快。例如,即使終端設備的屏幕分辨率尺寸發(fā)生了變化,導致用戶界面的大小有所改變,但 是,某一操作對象與整個用戶界面之間的相對關系是固定的,因此,依然能夠準確地定位到 該操作對象。
[0042] 在第二種實現(xiàn)方式中,通過識別預存的操作對象的特征數據進行定位。其中,預存 的操作對象的特征數據用于唯一地標識相應的操作對象,具體包括:操作對象的外部輪廓 數據和/或顏色數據等。例如,W "設置"按鈕為例來說,相應的特征數據包括該按鈕的形狀、 大小、顏色、文本及字體等。總之,通過預存的操作對象的特征數據能夠在用戶界面上唯一 地識別并定位操作對象。具體實現(xiàn)時,可W結合圖像識別等相關算法實現(xiàn)。通過該種方式可 W根據操作對象的外形特征來查找并確定操作對象的位置,與傳統(tǒng)的單純通過具體坐標值 來確定位置的方式相比同樣具備不受屏幕分辨率變化影響的優(yōu)勢。而且,當用戶界面的布 局變化時(如產品更新后),即使操作對象的位置發(fā)生了改變,通過該方式依然能夠準確定 位操作對象。
[0043] 步驟S220:獲取各個操作對象對應的操作類型。
[0044] 其中,步驟S220和步驟S210之間并沒有嚴格的先后順序。其中,操作類型具體包 括:操作類型的類型標識W及執(zhí)行該類型操作的操作邏輯。通過類型標識能夠唯一地確定 其具體為何種類型,通過執(zhí)行該類型操作的操作邏輯可W自動實現(xiàn)該類型的操作,從而達 到自動化測試的效果。其中,執(zhí)行該類型操作的操作邏輯可W通過預設函數實現(xiàn)。除預設函 數外,還可W通過其他類型的程序指令或者忍片實現(xiàn)。
[0045] 其中,操作類型具體包括W下內容中的一項或多項:長按類型、拖動類型、單擊類 型、雙擊類型W及用于模擬硬件按鈕的操作類型等,其中,硬件按鈕包括W下中的一個或多 個:返回鍵、菜單鍵、化me鍵、音量鍵和電源鍵等。針對某一操作對象,如控件而言,可W通過 操作類型輸入接口輸入對應的操作類型。其中,操作類型輸入接口可W通過下拉框、輸入框 等各種方式實現(xiàn),例如,當鼠標放在某一控件上時,自動彈出對應的下拉框,在下拉框中列 出了針對該控件可能執(zhí)行的各種操作類型,據此可W獲取到各個操作對象對應的操作類 型。
[0046] 步驟S230:通過預設接口將各個操作對象的屬性信息及其對應的操作類型寫入預 設的測試用例文件。
[0047]其中,預設接口可W是預先定義的接口函數等,該函數能夠通過掛鉤、回調等各類 機制監(jiān)測到獲取各個操作對象的屬性信息及其對應的操作類型的事件,并在監(jiān)測到該類事 件時自動獲取相應的屬性信息和操作類型并自動填充到預設的測試用例文件中。
[004引例如,可W通過如下代碼段實現(xiàn)上述功能:
[0049]
[(K)加 ]
[0051]其中,如果接收到"click"參數值則可W確定操作類型為點擊,如果接收到"drag" 參數值則可W確定操作類型為拖動。具體地,〇PERATION_ARRAY為操作對象在化automator 等測試框架中可W獲得屬性名的數組。operType參數為傳入的操作類型,通過該參數的具 體取值可W確定操作類型為點擊("click")、拖動("化ag")、滑動或長按等。operObjs參數 則能夠唯一確定操作對象的過濾屬性或者坐標比例,因此,通過該參數可W對操作對象進 行定位。總之,通過上述的函數代碼段能夠自動地將獲取到的操作對象的屬性信息和操作 類型等信息填充到測試用例文件的相應位置處,具體地,將各個操作對象的相關信息填充 到用例測試文件的何處位置則取決于測試用例文件的具體格式定義。
[0052] 其中,測試用例文件為自定義格式的文件,在該文件中,預先定義了測試流程框 架,并預留了填充操作對象的屬性信息及其對應的操作類型的接口,通過預留的接口能夠 實現(xiàn)操作對象的屬性信息及其對應的操作類型的自動填充。另外,該測試用例文件可W通 過JAVA、VC、VB等各類語言實現(xiàn),本實施例WJAVA為例進行說明,但本發(fā)明并不限定具體的 語言類型。
[0053] 步驟S240:根據上述測試用例文件生成對應的自動化測試文件。
[0054] 其中,測試用例文件和自動化測試文件可W是同一個文件,即:通過對測試用例文 件進行修改得到自動化測試文件?;蛘撸瑴y試用例文件和自動化測試文件也可W是兩個相 互獨立的文件,例如,可W對測試用例文件等相關文件進行打包,W生成jar包(即可執(zhí)行文 件包)形式的自動化測試文件,通過將該jar包傳輸給終端設備即可實現(xiàn)對終端設備自動測 試的功能。具體打包時可通過各種打包工具(如ant工具)實現(xiàn)。
[0055] 可選地,在步驟S240之后進一步包括下述的步驟S250。
[0056] 步驟S250:將上述自動化測試文件發(fā)送給待測試的終端設備,W供所述終端設備 根據所述自動化測試文件執(zhí)行測試。
[0057] 其中,終端設備通常為移動終端,例如,可能是多部手機。通常情況下,上述的S210 至S240可W通過PC端實現(xiàn),相應地,可W通過數據線等有線通信方式或Wif i、藍牙等無線通 信方式將自動化測試文件發(fā)送給待測試的移動終端,或者,也可W通過ADB命令入口傳輸上 述的自動化測試文件,本發(fā)明對此不作限定。
[0058] 當移動終端接收到上述的自動化測試文件后,即可根據上述的自動化測試文件完 成測試功能。具體地,在本發(fā)明實施例中,可W在自動化測試文件中包含完整的測試流程, 包括各個測試步驟及其對應的實現(xiàn)方式。在該種方式中,當自動化測試文件傳輸給移動終 端后,即可斷開與服務器側的連接,只需運行移動終端側的自動化測試文件即可實現(xiàn)整個 測試流程,該種方式在測試過程中無需與服務器側通信,能夠有效避免由于通信鏈路不穩(wěn) 定(例如無線信號不穩(wěn)定)等原因帶來的測試中斷現(xiàn)象。
[0059] 另外,也可W在自動化測試文件中僅包含操作類型標識和執(zhí)行各種類型操作的操 作邏輯,和/或,多個操作對象標識和定位各個操作對象的操作邏輯。在此基礎上,根據后續(xù) 接收到的測試指令完成各個操作邏輯,W實現(xiàn)完整的測試過程。也就是說,自動化測試文件 中僅定義了基本的操作類型和操作對象,但是并沒有定義具體的操作步驟。例如,在自動化 測試文件中包含"雙擊"操作所對應的操作邏輯,當該操作邏輯運行時能夠自動實現(xiàn)雙擊操 作,但是,該自動化測試文件并不會自動執(zhí)行"雙擊操作",只有在接收到要執(zhí)行雙擊操作的 測試指令時,才會根據相應的操作邏輯實現(xiàn)雙擊過程。相應地,在每一條測試指令中包含具 體的操作類型(如雙擊)和/或具體的操作對象(如控件名稱)。在該種方式中,將操作邏輯和 具體的操作步驟分離,因此,當某一步出現(xiàn)錯誤時,無需修改自動化測試文件,只需重新接 收并執(zhí)行該步驟對應的測試指令即可,可做到單步出錯單步調試的效果,能夠大大簡化調 試過程。
[0060] 圖3示出了本發(fā)明另一實施例提供的一種自動化測試文件的生成裝置的結構示意 圖,如圖3所示,該裝置包括:第一獲取模塊31、第二獲取模塊32、寫入模塊33和生成模塊34。
[0061] 其中,第一獲取模塊31適于獲取用戶界面上的各個操作對象的屬性信息。具體地, 第一獲取模塊獲取所述用戶界面的界面截圖,根據所述界面截圖獲取各個操作對象的屬性 信息。其中,所述屬性信息包括W下內容中的一項或多項:操作對象的類型、操作對象的標 識、操作對象的文本、操作對象所屬的程序類W及定位操作對象的操作邏輯。
[0062] 其中,定位操作對象的操作邏輯包括:通過預存的所述操作對象在用戶界面上的 坐標比例進行定位的操作邏輯;和/或,通過識別預存的操作對象的特征數據進行定位的操 作邏輯。
[0063] 第二獲取模塊32適于獲取各個操作對象對應的操作類型。具體地,所述第二獲取 模塊32具體用于:通過操作類型輸入接口接收對應的操作類型,并獲取所述操作類型的類 型標識W及執(zhí)行該類型操作的操作邏輯。其中,所述操作類型包括W下內容中的一項或多 項:長按類型、拖動類型、單擊類型、雙擊類型W及用于模擬硬件按鈕的操作類型,其中,所 述硬件按鈕包括W下中的一個或多個:返回鍵、菜單鍵、音量鍵和電源鍵。
[0064] 寫入模塊33適于通過預設接口將所述各個操作對象的屬性信息及其對應的操作 類型寫入預設的測試用例文件。
[0065] 生成模塊34適于根據所述測試用例文件生成對應的自動化測試文件。
[0066] 其中,上述的測試用例文件可W是JAVA代碼文件,也可W是其他類型的代碼文件。 上述的自動化測試文件可W是jar包,也可W是其他類型的測試包。
[0067] 關于上述各個模塊的具體結構和工作原理可參照方法實施例中相應部分的描述, 此處不再寶述。
[0068] 在本發(fā)明提供的自動化測試文件的生成方法及裝置中,能夠自動獲取用戶界面上 的各個操作對象的屬性信息W及對應的操作類型,并通過預設接口將各個操作對象的屬性 信息及其對應的操作類型自動寫入預設的測試用例文件。由此可見,在本發(fā)明實施例中,一 方面能夠通過預設的接口自動獲取到各個操作對象的屬性信息及其對應的操作類型;另一 方面能夠在預先定義好測試用例文件的前提下自動地將獲取到的信息填充到測試用例文 件中,W實現(xiàn)大幅提高自動化測試文件的生成速度的效果,顯著降低了開發(fā)人員的工作量。
[0069] 在此提供的算法和顯示不與任何特定計算機、虛擬系統(tǒng)或者其它設備固有相關。 各種通用系統(tǒng)也可W與基于在此的示教一起使用。根據上面的描述,構造運類系統(tǒng)所要求 的結構是顯而易見的。此外,本發(fā)明也不針對任何特定編程語言。應當明白,可W利用各種 編程語言實現(xiàn)在此描述的本發(fā)明的內容,并且上面對特定語言所做的描述是為了披露本發(fā) 明的最佳實施方式。
[0070] 在此處所提供的說明書中,說明了大量具體細節(jié)。然而,能夠理解,本發(fā)明的實施 例可W在沒有運些具體細節(jié)的情況下實踐。在一些實例中,并未詳細示出公知的方法、結構 和技術,W便不模糊對本說明書的理解。
[0071] 類似地,應當理解,為了精簡本公開并幫助理解各個發(fā)明方面中的一個或多個,在 上面對本發(fā)明的示例性實施例的描述中,本發(fā)明的各個特征有時被一起分組到單個實施 例、圖、或者對其的描述中。然而,并不應將該公開的方法解釋成反映如下意圖:即所要求保 護的本發(fā)明要求比在每個權利要求中所明確記載的特征更多的特征。更確切地說,如下面 的權利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個實施例的所有特征。因此, 遵循【具體實施方式】的權利要求書由此明確地并入該【具體實施方式】,其中每個權利要求本身 都作為本發(fā)明的單獨實施例。
[0072] 本領域那些技術人員可W理解,可W對實施例中的設備中的模塊進行自適應性地 改變并且把它們設置在與該實施例不同的一個或多個設備中??蒞把實施例中的模塊或單 元或組件組合成一個模塊或單元或組件,W及此外可W把它們分成多個子模塊或子單元或 子組件。除了運樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可W采用任何 組合對本說明書(包括伴隨的權利要求、摘要和附圖)中公開的所有特征W及如此公開的任 何方法或者設備的所有過程或單元進行組合。除非另外明確陳述,本說明書(包括伴隨的權 利要求、摘要和附圖)中公開的每個特征可W由提供相同、等同或相似目的的替代特征來代 替。
[0073] 此外,本領域的技術人員能夠理解,盡管在此的一些實施例包括其它實施例中所 包括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發(fā)明的范圍 之內并且形成不同的實施例。例如,在下面的權利要求書中,所要求保護的實施例的任意之 一都可WW任意的組合方式來使用。
[0074] 本發(fā)明的各個部件實施例可W W硬件實現(xiàn),或者W在一個或者多個處理器上運行 的軟件模塊實現(xiàn),或者W它們的組合實現(xiàn)。本領域的技術人員應當理解,可W在實踐中使用 微處理器或者數字信號處理器(DSP)來實現(xiàn)根據本發(fā)明實施例的裝置中的一些或者全部部 件的一些或者全部功能。本發(fā)明還可W實現(xiàn)為用于執(zhí)行運里所描述的方法的一部分或者全 部的設備或者裝置程序(例如,計算機程序和計算機程序產品)。運樣的實現(xiàn)本發(fā)明的程序 可W存儲在計算機可讀介質上,或者可W具有一個或者多個信號的形式。運樣的信號可W 從因特網網站上下載得到,或者在載體信號上提供,或者W任何其他形式提供。
[0075] 應該注意的是上述實施例對本發(fā)明進行說明而不是對本發(fā)明進行限制,并且本領 域技術人員在不脫離所附權利要求的范圍的情況下可設計出替換實施例。在權利要求中, 不應將位于括號之間的任何參考符號構造成對權利要求的限制。單詞"包含"不排除存在未 列在權利要求中的元件或步驟。位于元件之前的單詞"一"或"一個"不排除存在多個運樣的 元件。本發(fā)明可W借助于包括有若干不同元件的硬件W及借助于適當編程的計算機來實 現(xiàn)。在列舉了若干裝置的單元權利要求中,運些裝置中的若干個可W是通過同一個硬件項 來具體體現(xiàn)。單詞第一、第二、W及第=等的使用不表示任何順序。可將運些單詞解釋為名 稱。
【主權項】
1. 一種自動化測試文件的生成方法,包括: 獲取用戶界面上的各個操作對象的屬性信息,以及獲取各個操作對象對應的操作類 型; 通過預設接口將所述各個操作對象的屬性信息及其對應的操作類型寫入預設的測試 用例文件; 根據所述測試用例文件生成對應的自動化測試文件。2. 根據權利要求1所述的方法,其中,所述獲取各個操作對象對應的操作類型具體包 括:通過操作類型輸入接口接收對應的操作類型,并獲取所述操作類型的類型標識以及執(zhí) 行該類型操作的操作邏輯; 其中,所述操作類型包括以下內容中的一項或多項:長按類型、拖動類型、單擊類型、雙 擊類型以及用于模擬硬件按鈕的操作類型,其中,所述硬件按鈕包括以下中的一個或多個: 返回鍵、菜單鍵、音量鍵和電源鍵。3. 根據權利要求1所述的方法,其中,所述獲取用戶界面上的各個操作對象的屬性信息 具體包括:獲取所述用戶界面的界面截圖,根據所述界面截圖獲取各個操作對象的屬性信 息; 其中,所述屬性信息包括以下內容中的一項或多項:操作對象的類型、操作對象的標 識、操作對象的文本、操作對象所屬的程序類以及定位操作對象的操作邏輯。4. 根據權利要求3所述的方法,其中,所述定位操作對象的操作邏輯包括:通過預存的 所述操作對象在用戶界面上的坐標比例進行定位的操作邏輯;和/或,通過識別預存的操作 對象的特征數據進行定位的操作邏輯。5. 根據權利要求1所述的方法,其中,所述測試用例文件為JAVA代碼文件。6. -種自動化測試文件的生成裝置,包括: 第一獲取模塊,適于獲取用戶界面上的各個操作對象的屬性信息; 第二獲取模塊,適于獲取各個操作對象對應的操作類型; 寫入模塊,適于通過預設接口將所述各個操作對象的屬性信息及其對應的操作類型寫 入預設的測試用例文件; 生成模塊,適于根據所述測試用例文件生成對應的自動化測試文件。7. 根據權利要求6所述的裝置,其中,所述第二獲取模塊具體用于:通過操作類型輸入 接口接收對應的操作類型,并獲取所述操作類型的類型標識以及執(zhí)行該類型操作的操作邏 輯; 其中,所述操作類型包括以下內容中的一項或多項:長按類型、拖動類型、單擊類型、雙 擊類型以及用于模擬硬件按鈕的操作類型,其中,所述硬件按鈕包括以下中的一個或多個: 返回鍵、菜單鍵、音量鍵和電源鍵。8. 根據權利要求6所述的裝置,其中,所述第一獲取模塊具體用于:獲取所述用戶界面 的界面截圖,根據所述界面截圖獲取各個操作對象的屬性信息; 其中,所述屬性信息包括以下內容中的一項或多項:操作對象的類型、操作對象的標 識、操作對象的文本、操作對象所屬的程序類以及定位操作對象的操作邏輯。9. 根據權利要求8所述的裝置,其中,所述定位操作對象的操作邏輯包括:通過預存的 所述操作對象在用戶界面上的坐標比例進行定位的操作邏輯;和/或,通過識別預存的操作 對象的特征數據進行定位的操作邏輯。10.根據權利要求6所述的裝置,其中,所述測試用例文件為JAVA代碼文件。
【文檔編號】G06F11/36GK106021102SQ201610323689
【公開日】2016年10月12日
【申請日】2016年5月16日
【發(fā)明人】孫健, 黃威
【申請人】北京奇虎科技有限公司, 奇智軟件(北京)有限公司