一種自動化測試方法及裝置的制造方法
【技術領域】
[0001]本發明實施例涉及軟件測試技術領域,尤其涉及一種自動化測試方法及裝置。
【背景技術】
[0002]如今移動互聯網提供的服務越來越多,快節奏決定了自動化測試的強烈需求,后臺接口功能的自動化測試是其中重要的一部分。
[0003]現有的自動化測試過程中采用的主要是基于網絡產品界面(Website UserInterface,Web UI)接口自動化測試方案,該方案中測試用例由一個個測試動作組合起來,每個測試動作由一個測試文件實現,文件后綴用來標識測試動作,通過各測試文件實現的測試動作來完成待測接口所需數據的構造、發送、返回結果的驗證工作。
[0004]然而,當待測接口復雜時一個測試用例包含的測試文件會很多,導致測試文件的維護很麻煩,也不便于通過數據庫來管理測試用例,并且在修改測試用例時需要打開多個測試文件,從而需要在測試文件間來回切換。綜上,現有的自動化測試方法存在操作繁瑣、效率較低等缺點。
【發明內容】
[0005]本發明提供一種自動化測試方法及裝置,以簡化自動化測試操作、提高測試效率。
[0006]第一方面,本發明實施例提供了一種自動化測試方法,包括:
[0007]獲取依據測試需求預先創建的測試用例腳本,其中所述測試用例腳本調用預先創建的測試動作源碼;
[0008]解析并執行創建的測試用例腳本。
[0009]第二方面,本發明實施例還提供了一種自動化測試裝置,包括:
[0010]腳本獲取模塊,用于獲取依據測試需求預先創建的測試用例腳本,其中所述測試用例腳本調用預先創建的測試動作源碼;
[0011]腳本解析模塊,用于解析并執行創建的測試用例腳本。
[0012]本發明實施例提供的技術方案,通過獲取依據測試需求預先創建的測試用例腳本,且在執行測試用例腳本過程中,執行測試用例腳本中調用的測試動作源碼,相比于現有的通過多個測試文件來實現測試目的,簡化了自動化測試操作、提高了測試效率。
【附圖說明】
[0013]圖1是本發明實施例一中的一種自動化測試方法的流程圖;
[0014]圖2是本發明實施例二中的一種自動化測試方法的流程圖;
[0015]圖3a是本發明實施例三中的一種自動化測試方法的流程圖;
[0016]圖3b是本發明實施例三中的測試動作源碼的示意圖;
[0017]圖3c是本發明實施例三中的測試動作腳本的示意圖;
圖3d是本發明實施例三中的自動化測試方法的原理示意圖;
[0018]圖4是本發明實施例四中的一種自動化測試裝置的結構圖。
【具體實施方式】
[0019]下面結合附圖和實施例對本發明作進一步的詳細說明。可以理解的是,此處所描述的具體實施例僅僅用于解釋本發明,而非對本發明的限定。另外還需要說明的是,為了便于描述,附圖中僅示出了與本發明相關的部分而非全部結構。
[0020]實施例一
[0021]圖1是本發明實施例一中的一種自動化測試方法的流程圖。該方法可以由自動化測試裝置來執行,該裝置可通過硬件和/或軟件的方式實現,該裝置可以配置于智能終端中,智能終端指的是諸如智能手機、平板電腦之類的電子設備。
[0022]如圖1所示,所述方法具體包括如下步驟:
[0023]步驟11、獲取依據測試需求預先創建的測試用例腳本,其中所述測試用例腳本調用預先創建的測試動作源碼。
[0024]在本實施例中,測試人員通過分析測試需求來確定測試用例(Test Case)。測試用例指的是為某個特殊目標而編制的一組測試輸入、執行條件以及預期結果,以便測試某個程序路徑或核實是否滿足某個特定需求。測試用例一般包含四階段:數據準備階段、數據構造與發送階段、結果校驗階段和數據清理階段。
[0025]其中,數據準備階段(setup)主要完成前期的數據準備工作,包括構造好請求接口前所需的所有的數據;數據構造與發送階段(handle and send):主要根據接口的要求完成接口所需數據的構造,包括加密、簽名等處理,然后給測試接口發送數據,接收返回結果;結果校驗階段(verify):主要把上一階段返回的結果與期望值對比,還包括數據庫數據校驗等,來驗證接口功能是否正常;數據清理階段(teardown):主要完成后期臟數據的清理工作。
[0026]測試人員創建測試用例腳本,其中測試用例腳本調用預先創建的測試動作源碼,在監測到測試觸發事件時,智能終端獲取預先創建的測試用例腳本,避免了現有技術中通過測試文件來實現測試動作所導致的需要在測試文件間來回切換等問題,提高了測試效率。
[0027]示例性的,獲取依據測試需求預先創建的測試用例腳本,可以包括:獲取通過表達式語言JEXL預先創建的所述測試用例腳本。本實施例中測試人員通過JEXL表達式構建測試用例腳本,相比于現有技術中通過測試文件的后綴名來標識測試動作并確定測試文件執行順序來說,本實施例中的測試用例具有易維護,管理便捷等優點。
[0028]步驟12、解析并執行創建的測試用例腳本。
[0029]智能終端解析并執行測試用例腳本,獲得測試結果,并依據測試結果確定待測試接口的性能。
[0030]示例性的,解析并執行創建的測試用例腳本,可以包括J^Fjexl的測試用例腳本,執行調用的測試動作源碼。
[0031]本實施例提供的技術方案,通過獲取JEXL表達式編輯的接口自動化測試用例,在執行測試用例腳本的同時還執行測試用例腳本中調用的測試動作源碼,簡化了測試用例,且測試用例維護方便、管理便捷,還簡化了自動化測試操作、提高了測試效率。
[0032]實施例二
[0033]圖2是本發明實施例二中的一種自動化測試方法的流程圖。本實施例以上述實施例一為基礎對測試用例的編輯過程做進一步限定。
[0034]如圖2所示,本實施例提供的方法具體可以包括如下步驟:
[0035]步驟21、獲取依據測試需求預先確定的測試用例所需的測試動作。
[0036]測試人員依據測試需求確定測試用例中所需執行的測試動作,如加密動作、簽名動作、結果校驗動作等,智能終端獲取測試用例所需的測試動作。
[0037]步驟22、獲取預先采用編程語言創建并封裝的所述測試動作源碼。
[0038]在確定測試用例所需的測試動作后,測試人員還采用編程語言創建并封裝測試動作源碼。
[0039]為了簡化測試用例,獲取預先采用編程語言創建并封裝的所述測試動作源碼,可以包括:獲取預先采用java語言編輯的測試用例所需的測試動作集合對應的測試動作集合源碼,封裝編輯的測試動作集合源碼。具體的,測試人員采用java語言可以創建多個測試動作組成的測試動作集合對應的測試動作集合源碼,然而現有技術中每個測試動作均需對應一個測試文件,因此,本實施例中測試動作集合源碼的數量小于現有技術中測試文件的數量,簡化了測試用例,從而提高了測試效率。
[0040]步驟23、獲取依據測試需求預先創建的測試用例腳本,其中所述測試用例腳本調用預先創建的測試動作源碼。
[0041]測試人員依據測試需求創建測試用例腳本,其中測試用例腳本調用步驟22中創建的測試動作源碼,智能終端獲取創建的測試用例腳本。
[0042]步驟24、解析并執行創建的測試用例腳本。
[0043]本實施例提供的技術方案,通過獲取采用java語音編輯的測試動作源碼,并獲取JEXL表達式編輯的接口自動化測試用例,在執行測試用例