[發明專利]單元測試方法和裝置有效
| 申請號: | 201810455233.9 | 申請日: | 2018-05-14 |
| 公開(公告)號: | CN108595342B | 公開(公告)日: | 2021-09-14 |
| 發明(設計)人: | 潘福江 | 申請(專利權)人: | 杭州有贊科技有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 杭州裕陽聯合專利代理有限公司 33289 | 代理人: | 姚宇吉 |
| 地址: | 310000 浙江省杭州市*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 單元測試 方法 裝置 | ||
本發明公開了一種單元測試方法和裝置,其中,方法包括:獲取當前單元測試下輸入的測試對象,通過反射機制獲取與測試對象對應的每個類信息和方法信息,依次根據每個類信息和方法信息依據預設規則和預設代碼模板生成單元測試代碼;單元測試代碼包括組合引索鍵信息;根據組合引索鍵信息從數據庫中加載關聯的配置列表,并對配置列表進行解析,依次讀取所有解析得到的測試用例數據,并執行單元測試代碼,根據執行結果生成測試報告。不僅實現自動生成單元測試代碼,極大提高了單元測試代碼的開發效率;而且通過組合引索鍵信息從數據庫中加載關聯的配置列表能夠實現單元測試的自動化,避免人為因素導致的測試錯誤,提高測試效率和準確率。
技術領域
本發明涉及軟件測試技術領域,尤其涉及一種單元測試方法和裝置。
背景技術
單元測試是一種白盒測試,旨在檢測軟件代碼中的錯誤和漏洞,從源頭上保證軟件的質量,是對軟件每一行代碼或代碼塊進行覆蓋測試以判斷其正確與否。在軟件開發過程中發揮了重要的作用,是非常有效的代碼質量保證手段。在現有技術中,單元測試方法主要是結合開源的一些測試框架(如Junit、Testng等)由開發人員進行手工編碼,再通過人工編寫大量的測試用例代碼去覆蓋代碼各個分支邏輯,以對源程序代碼進行測試驗證,并通過編譯生成測試報告,再通過解讀測試報告中令人費解的測試數據,最終才能判斷出源程序代碼中的錯誤和漏洞。
上述現有技術存在的技術缺陷在于:在編寫測試用例的過程中,需要投入較多精力,甚至投入比業務代碼開發更多的時間精力來編寫覆蓋各個場景的單元測試代碼,時間成本較高;而且存在過多的人工干預,存在人為因素導致的測試錯誤,故使源程序遺留或多或少的漏洞未能及時發現,降低測試效率。
發明內容
本發明的目的是提供一種單元測試方法和裝置,不僅實現自動生成單元測試代碼,極大提高了單元測試代碼的開發效率;而且通過組合引索鍵信息從數據庫中加載關聯的配置列表能夠實現單元測試的自動化,避免人為因素導致的測試錯誤,提高測試效率和準確率。
本發明提供了一種單元測試方法,包括以下步驟;
獲取當前單元測試下輸入的測試對象,通過反射機制獲取與所述測試對象對應的每個類信息和方法信息,依次根據每個所述類信息和方法信息依據預設規則和預設代碼模板生成單元測試代碼;所述單元測試代碼包括組合引索鍵信息;
根據所述組合引索鍵信息從數據庫中加載關聯的配置列表,并對所述配置列表進行解析,得到測試用例數據;
依次讀取所有的所述測試用例數據,并執行所述單元測試代碼,根據執行結果生成測試報告。
作為一種可實施方式,所述根據所述組合引索鍵信息從數據庫中加載關聯的配置列表,包括以下步驟;
根據所述組合引索鍵信息從本地數據庫中加載關聯的本地配置列表和本地版本信息;
獲取測試用例的當前版本信息,將所述本地版本信息與所述當前版本信息進行比對判斷;
若所述本地版本信息與所述當前版本信息的版本一致,則將本地配置列表變更為配置列表;
若所述本地版本信息與所述當前版本信息的版本不一致,則根據所述組合引索鍵信息從云服務器的數據庫中加載關聯的云端配置列表和云端版本信息,并將所述云端配置列表和云端版本信息進行存儲,分別替換本地數據庫中所述本地配置列表和本地版本信息。
作為一種可實施方式,所述依次根據每個所述類信息和方法信息依據預設規則和預設代碼模板生成單元測試代碼,包括以下步驟;
依據所述預設規則對每個類信息進行后綴限定處理,同時,依據所述預設規則對每個方法信息進行前綴限定處理;
依次將限定處理后的每個類信息和與類信息對應的方法信息依據預設代碼模板進行執行處理,生成單元測試代碼;所述預設代碼模板包括入參轉換組裝模板、執行測試方法模板以及結果預期對比模板。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于杭州有贊科技有限公司,未經杭州有贊科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810455233.9/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:測試用例自動生成方法及系統
- 下一篇:應用程序的測試方法及裝置





