測試代碼生成方法及裝置、測試框架代碼執行方法及裝置的制造方法
【專利摘要】本發明公開了測試代碼生成方法、裝置,測試框架代碼執行方法及裝置,測試框架代碼執行方法包括:接收用戶輸入的運行文件選擇,根據該運行文件選擇加載相應類型的所有測試用例代碼;其中,該類型包括失敗用例代碼和其他測試用例代碼;分別執行所述測試用例代碼,并記錄執行結果;判斷所有測試用例代碼是否執行完畢,若是,則判斷測試用例代碼是否測試通過,若是,則生成測試報告,否則,標記該測試用例代碼為失敗用例代碼;所述測試用例代碼由測試代碼生成方法獲得。本發明根據不同的腳步文件生成測試代碼文件,在應用不同的測試代碼文件時間不需要更改代碼,使得用戶在接到測試任務時,大大節省測試時間,降低人工測試成本。
【專利說明】
測試代碼生成方法及裝置、測試框架代碼執行方法及裝置
技術領域
[0001]本發明涉及自動化技術領域,尤其涉及一種測試代碼生成方法及裝置、測試框架代碼執行方法及裝置。
【背景技術】
[0002]目前在測試過程中幾乎都是人工撰寫測試用例,以及人工進行用例測試,人工成本和時間成本高,在變化快、版本迭代多、接口類型多樣化、測試時間緊迫、測試用例維護成本高等需求下,原來的測試方式不再適合。
【發明內容】
[0003]為了克服現有技術的不足,本發明的目的之一在于提供測試代碼生成方法,其能自動化根據現有測試模板文件生成測試代碼。
[0004]本發明的目的之二在于提供測試代碼生成裝置,其能實現本發明的目的之一。
[0005]本發明的目的之三在于提供測試框架代碼執行方法,其能自動加載測試用例代碼,執行測試工作。
[0006]本發明的目的之四在于提供測試框架代碼執行裝置,其能實現本發明的目的之
_- O
[0007]本發明的目的之一采用以下技術方案實現:
[0008]—種測試代碼生成方法,包括如下步驟:
[0009]步驟一:讀取測試框架模板的腳本文件,并根據該腳本文件生成測試代碼文件;
[0010]步驟二:加載測試代碼文件,接收用戶輸入的項目名稱,判斷是否生成用例代碼,若是,執行步驟三,否則,根據項目名稱以及測試代碼文件生成相應的測試框架代碼和該測試框架代碼目錄;
[0011 ]步驟三:根據測試代碼文件判斷是否生成接口測試代碼,若是,則執行步驟四,否貝IJ,根據項目名稱和測試代碼文件生成一整套測試代碼;
[0012]步驟四:訪問接口數據產生返回數據,根據返回數據處理得到校驗的測試代碼,根據校驗的測試代碼和接口數據生成一條相應的測試用例代碼;
[0013]步驟五:重復步驟四,根據所有測試用例代碼和項目名稱生成一整套測試代碼;
[0014]其中,所述一整套測試代碼包括用例測試代碼和測試框架代碼。
[0015]優選的,所述步驟四包括如下子步驟:
[0016]步驟41:接收用戶輸入的存儲路徑,以進入相應的存儲文件夾;
[0017]步驟42:解析該存儲文件夾中的接口文件,并處理得到接口數據;
[0018]步驟43:訪問接口數據并產生返回數據,根據返回數據處理得到校驗的測試代碼,根據校驗的測試代碼和接口數據生成一條相應的測試用例代碼。
[0019]本發明的目的之二采用以下技術方案實現:
[0020]一種測試代碼生成裝置,包括如下模塊:
[0021]讀取模塊:用于讀取測試框架模板的腳本文件,并根據該腳本文件生成測試代碼文件;
[0022]加載模塊:用于加載測試代碼文件,接收用戶輸入的項目名稱,判斷是否生成用例代碼,若是,執行判斷模塊,否則,根據項目名稱以及測試代碼文件生成相應的測試框架代碼和該測試框架代碼目錄;
[0023]判斷模塊:用于根據測試代碼文件判斷是否生成接口測試代碼,若是,則執行步驟四,否則,根據項目名稱和測試代碼文件生成一整套測試代碼;[〇〇24]訪問模塊:用于訪問接口數據產生返回數據,根據返回數據處理得到校驗的測試代碼,根據校驗的測試代碼和接口數據生成一條相應的測試用例代碼;
[0025]生成模塊:用于重復訪問模塊,根據所有測試用例代碼和項目名稱生成一整套測試代碼;
[0026]其中,所述一整套測試代碼包括用例測試代碼和測試框架代碼。[〇〇27]優選的,訪問模塊具體包括如下子模塊:
[0028]接收子模塊:用于接收用戶輸入的存儲路徑,以進入相應的存儲文件夾;
[0029]解析子模塊:用于解析該存儲文件夾中的接口文件,并處理得到接口數據;
[0030]訪問子模塊:用于訪問接口數據并產生返回數據,根據返回數據處理得到校驗的測試代碼,根據校驗的測試代碼和接口數據生成一條相應的測試用例代碼。
[0031]本發明的目的之三采用以下技術方案實現:
[0032]—種測試框架代碼執行方法,包括如下步驟:
[0033]A1:接收用戶輸入的運行文件選擇,根據該運行文件選擇加載相應類型的所有測試用例代碼;其中,該類型至少包括失敗用例代碼;
[0034]A2:分別執行所述測試用例代碼,并記錄執行結果;
[0035]A3:判斷所有測試用例代碼是否執行完畢,若是,則執行A4,否則返回A2;
[0036]A4:判斷測試用例代碼是否測試通過,若是,則生成測試報告,否則,標記該測試用例代碼為失敗用例代碼;
[0037]所述測試用例代碼由測試代碼生成方法獲得。
[0038]本發明的目的之四采用以下技術方案實現:
[0039]—種測試框架代碼執行裝置,包括如下模塊:
[0040]加載子模塊:用于接收用戶輸入的運行文件選擇,根據該運行文件選擇加載相應類型的所有測試用例代碼;其中,該類型至少包括失敗用例代碼;
[0041]執行子模塊:用于分別執行所述測試用例代碼,并記錄執行結果;
[0042]第一判斷子模塊:用于判斷所有測試用例代碼是否執行完畢,若是,則執行第二判斷子模塊,否則返回執行子模塊;
[0043]第二判斷子模塊:用于判斷測試用例代碼是否測試通過,若是,則生成測試報告, 否則,標記該測試用例代碼為失敗用例代碼;
[0044]所述測試用例代碼由測試代碼生成方法獲得。
[0045]相比現有技術,本發明的有益效果在于:
[0046]本發明根據不同的腳步文件生成測試代碼文件,在應用不同的測試代碼文件時間不需要更改代碼,使得用戶在接到測試任務時,大大節省測試時間,降低人工測試成本。
【附圖說明】
[0047]圖1為本發明的測試代碼生成方法的流程圖。
[0048]圖2為本發明的測試框架代碼執行方法的流程圖。
【具體實施方式】
[0049 ]下面,結合附圖以及【具體實施方式】,對本發明做進一步描述:
[0050]參見圖1,本發明提供一種測試代碼生成方法,其包括如下步驟:
[0051 ] S1:讀取測試框架模板的腳本文件,并根據該腳本文件生成測試代碼文件;
[0052]將寫好的腳本文件保存在指定目錄下,通過update工具運行,自動讀取指定模板下的腳本文件,通過一系列算法常量替換得到測試代碼文件,測試代碼文件為data.db文件,保存至data.tb文件中。測試代碼文件為加密文件,防止異常更改,在后面應用到測試代碼文件的操作中,實際上有先對該測試代碼文件進行解密操作得到代碼框架。
[0053]S2:加載測試代碼文件,接收用戶輸入的項目名稱;
[0054]運行工具為obj_create,自動data.db文件,并提示用戶輸入項目名稱,以對將要生產的測試代碼的項目名稱進行創建。
[0055]S3:判斷是否生成用例代碼,若是,執行S4,否則,根據項目名稱以及測試代碼文件生成相應的測試框架代碼和該測試框架代碼目錄;
[0056]如果不生成用例代碼則直接生產測試框架代碼和目錄,不保護測試用例代碼。
[0057]S4:根據測試代碼文件判斷是否生成接口測試代碼,若是,則執行S5,否則,根據項目名稱和測試代碼文件生成一整套測試代碼;
[0058]S4也是判斷測試類型,如果步驟SI所讀取的現有的測試框架模板為接口模板,則由于測試用例需要,須訪問接口獲得接口數據,如果是app測試模板,則不需要對接口進行訪問,直接生成一整套測試代碼。
[0059]S5:訪問接口數據產生返回數據,根據返回數據處理得到校驗的測試代碼,根據校驗的測試代碼和接口數據生成一條相應的測試用例代碼;
[0060]步驟S5具體可包括如下子步驟:
[0061 ]步驟51:接收用戶輸入的存儲路徑,以進入相應的存儲文件夾;
[0062]步驟52:解析該存儲文件夾中的接口文件,并處理得到接口數據;
[0063]步驟53:訪問接口數據并產生返回數據,根據返回數據處理得到校驗的測試代碼,根據校驗的測試代碼和接口數據生成一條相應的測試用例代碼。
[0064]Postman工具導出保存的接口文件,相關代碼對接口文件進行解析,并記錄到內存中,解析后對每個接口文件進行一次訪問,在訪問一條http請求后記錄返回數據,經過算法處理得到校驗的測試代碼。
[0065]S6:重復S5,根據所有測試用例代碼和項目名稱生成一整套測試代碼;
[0066]其中,所述一整套測試代碼包括用例測試代碼和測試框架代碼。
[0067]也就是說,前面用戶選擇了生成用例代碼,則會同時生成用例測試代碼和測試框架代碼,否則直接生成測試框架代碼及其目錄。
[0068]相應的,本發明還提供一種測試代碼生成裝置,其包括如下模塊:
[0069]讀取模塊:用于讀取測試框架模板的腳本文件,并根據該腳本文件生成測試代碼文件;
[0070]加載模塊:用于加載測試代碼文件,接收用戶輸入的項目名稱,判斷是否生成用例代碼,若是,執行判斷模塊,否則,根據項目名稱以及測試代碼文件生成相應的測試框架代碼和該測試框架代碼目錄;
[0071]判斷模塊:用于根據測試代碼文件判斷是否生成接口測試代碼,若是,則執行步驟四,否則,根據項目名稱和測試代碼文件生成一整套測試代碼;
[0072]訪問模塊:用于訪問接口數據產生返回數據,根據返回數據處理得到校驗的測試代碼,根據校驗的測試代碼和接口數據生成一條相應的測試用例代碼;
[0073]生成模塊:用于重復訪問模塊,根據所有測試用例代碼和項目名稱生成一整套測試代碼;
[0074]其中,所述一整套測試代碼包括用例測試代碼和測試框架代碼。
[0075]其中,訪問模塊具體包括如下子模塊:
[0076]接收子模塊:用于接收用戶輸入的存儲路徑,以進入相應的存儲文件夾;
[0077]解析子模塊:用于解析該存儲文件夾中的接口文件,并處理得到接口數據;[〇〇78]訪問子模塊:用于訪問接口數據并產生返回數據,根據返回數據處理得到校驗的測試代碼,根據校驗的測試代碼和接口數據生成一條相應的測試用例代碼。
[0079]參見圖2,本發明還提供測試框架代碼執行方法,這里的測試框架代碼由測試代碼生成方法獲得,這里提出的執行方法也就是對測試框架代碼的應用,包括如下步驟:
[0080]A1:接收用戶輸入的運行文件選擇,根據該運行文件選擇加載相應類型的所有測試用例代碼;
[0081]這里的類型包括失敗用例代碼和全部用例代碼,全部用例代碼包括了失敗和非失敗的。用戶可對需要運行的文件進行選擇,選擇運行全部測試用例代碼還是所有的失敗用例代碼。通過這個操作,對于上一次執行失敗的測試用例代碼再一次進行測試檢測時,不需要將全部測試用例代碼都重新測試一遍,只需要測試失敗測試用例代碼即可,減低了回歸測試時間。
[0082]A2:分別執行所述測試用例代碼,并記錄執行結果;
[0083]A3:判斷所有測試用例代碼是否執行完畢,若是,則執行A4,否則返回A2;
[0084]A4:判斷測試用例代碼是否測試通過,若是,則生成測試報告,否則,標記該測試用例代碼為失敗用例代碼;這里的失敗用例代碼即是前面所述的類型中的識別用例代碼。實際上,這里的判斷是對每一條測試用例代碼進行判斷測試是否通過,對于不同的測試用例代碼則標記為失敗用例代碼,如果下一次要進行用例測試,并且只對失敗用例代碼進行測試時,則對于這次所標記的全部失敗用例代碼進行重新測試。
[0085]測試用例代碼由測試代碼生成方法獲得。
[0086]相應的,本發明還提出一種測試框架代碼執行裝置,包括如下模塊:
[0087]加載子模塊:用于接收用戶輸入的運行文件選擇,根據該運行文件選擇加載相應類型的所有測試用例代碼;
[0088]執行子模塊:用于分別執行所述測試用例代碼,并記錄執行結果;
[0089]第一判斷子模塊:用于判斷所有測試用例代碼是否執行完畢,若是,則執行第二判斷子模塊,否則返回執行子模塊;
[0090]第二判斷子模塊:用于判斷測試用例代碼是否測試通過,若是,則生成測試報告,否則,標記該測試用例代碼為失敗用例代碼;
[0091]所述測試用例代碼由測試代碼生成方法獲得,其中,所述類型包括失敗用例代碼和全部測試用例代碼。
[0092]對本領域的技術人員來說,可根據以上描述的技術方案以及構思,做出其它各種相應的改變以及形變,而所有的這些改變以及形變都應該屬于本發明權利要求的保護范圍之內。
【主權項】
1.一種測試代碼生成方法,其特征在于,包括如下步驟: 步驟一:讀取測試框架模板的腳本文件,并根據該腳本文件生成測試代碼文件; 步驟二:加載測試代碼文件,接收用戶輸入的項目名稱,判斷是否生成用例代碼,若是,執行步驟三,否則,根據項目名稱以及測試代碼文件生成相應的測試框架代碼和該測試框架代碼目錄; 步驟三:根據測試代碼文件判斷是否生成接口測試代碼,若是,則執行步驟四,否則,根據項目名稱和測試代碼文件生成一整套測試代碼; 步驟四:訪問接口數據產生返回數據,根據返回數據處理得到校驗的測試代碼,根據校驗的測試代碼和接口數據生成一條相應的測試用例代碼; 步驟五:重復步驟四,根據所有測試用例代碼和項目名稱生成一整套測試代碼; 其中,所述一整套測試代碼包括用例測試代碼和測試框架代碼。2.如權利要求1所述的測試代碼生成方法,其特征在于,所述步驟四包括如下子步驟: 步驟41:接收用戶輸入的存儲路徑,以進入相應的存儲文件夾; 步驟42:解析該存儲文件夾中的接口文件,并處理得到接口數據; 步驟43:訪問接口數據并產生返回數據,根據返回數據處理得到校驗的測試代碼,根據校驗的測試代碼和接口數據生成一條相應的測試用例代碼。3.一種測試代碼生成裝置,其特征在于,包括如下模塊: 讀取模塊:用于讀取測試框架模板的腳本文件,并根據該腳本文件生成測試代碼文件;加載模塊:用于加載測試代碼文件,接收用戶輸入的項目名稱,判斷是否生成用例代碼,若是,執行判斷模塊,否則,根據項目名稱以及測試代碼文件生成相應的測試框架代碼和該測試框架代碼目錄; 判斷模塊:用于根據測試代碼文件判斷是否生成接口測試代碼,若是,則執行步驟四,否則,根據項目名稱和測試代碼文件生成一整套測試代碼; 訪問模塊:用于訪問接口數據產生返回數據,根據返回數據處理得到校驗的測試代碼,根據校驗的測試代碼和接口數據生成一條相應的測試用例代碼; 生成模塊:用于重復訪問模塊,根據所有測試用例代碼和項目名稱生成一整套測試代碼; 其中,所述一整套測試代碼包括用例測試代碼和測試框架代碼。4.如權利要求3所述的測試代碼生成裝置,其特征在于,訪問模塊具體包括如下子模塊: 接收子模塊:用于接收用戶輸入的存儲路徑,以進入相應的存儲文件夾; 解析子模塊:用于解析該存儲文件夾中的接口文件,并處理得到接口數據; 訪問子模塊:用于訪問接口數據并產生返回數據,根據返回數據處理得到校驗的測試代碼,根據校驗的測試代碼和接口數據生成一條相應的測試用例代碼。5.一種測試框架代碼執行方法,其特征在于,包括如下步驟: Al:接收用戶輸入的運行文件選擇,根據該運行文件選擇加載相應類型的所有測試用例代碼;其中,該類型至少包括失敗用例代碼; A2:分別執行所述測試用例代碼,并記錄執行結果; A3:判斷所有測試用例代碼是否執行完畢,若是,則執行A4,否則返回A2;A4:判斷測試用例代碼是否測試通過,若是,則生成測試報告,否則,標記該測試用例代 碼為失敗用例代碼;所述測試用例代碼由權利要求1所述的測試代碼生成方法獲得。6.—種測試框架代碼執行裝置,其特征在于,包括如下模塊:加載子模塊:接收用戶輸入的運行文件選擇,根據該運行文件選擇加載相應類型的所 有測試用例代碼;其中,該類型至少包括失敗用例代碼;執行子模塊:用于分別執行所述測試用例代碼,并記錄執行結果;第一判斷子模塊:用于判斷所有測試用例代碼是否執行完畢,若是,則執行第二判斷子 模塊,否則返回執行子模塊;第二判斷子模塊:用于判斷測試用例代碼是否測試通過,若是,則生成測試報告,否則, 標記該測試用例代碼為失敗用例代碼;所述測試用例代碼由權利要求1所述的測試代碼生成方法獲得。
【文檔編號】G06F11/36GK106021118SQ201610443187
【公開日】2016年10月12日
【申請日】2016年6月20日
【發明人】王振飛, 鄭明偉, 邵福興
【申請人】深圳充電網科技有限公司