[發明專利]基于Mock的單元測試方法、裝置、設備及可讀存儲介質在審
| 申請號: | 201811431921.8 | 申請日: | 2018-11-28 |
| 公開(公告)號: | CN109614322A | 公開(公告)日: | 2019-04-12 |
| 發明(設計)人: | 楊寬;賴韜;任弘 | 申請(專利權)人: | 北京京東金融科技控股有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36;G06F9/455 |
| 代理公司: | 北京律智知識產權代理有限公司 11438 | 代理人: | 袁禮君;闞梓瑄 |
| 地址: | 100176 北京市大興區經濟*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 映射 可讀存儲介質 單元測試 映射類 測試 編碼成本 集中管理 預先配置 調用 查找 返回 創建 申請 | ||
本申請公開一種基于Mock的單元測試方法、裝置、設備及可讀存儲介質。該方法包括:當Mock對象被創建時,在預先配置好的至少一個測試用例中查找是否存在與Mock對象對應的映射類及映射方法;以及如果查找到映射類及映射方法,則獲取映射方法;及當調用Mock對象的方法時,執行映射方法,并返回相應的Mock數據。該方法能夠對測試用例集中管理,有效降低編碼成本。
技術領域
本發明涉及計算機技術領域,具體而言,涉及一種基于Mock的單元測試方法、裝置、設備及可讀存儲介質。
背景技術
單元測試(Unit Testing)是指對軟件中的最小可測單元進行檢查和驗證,通常由開發人員或測試人員在開發過程中或者在開發完成后實施。最小可測單元可以為一個方法或者函數,也可以為一個窗口或者菜單等。
單元測試通常須要在與程序的其他部分相隔離的情況下獨立地進行。但在最小測試單元里,可能依賴大量的對象,并調用所依賴對象的方法。這些所依賴的對象及其方法,絕大部分是不容易直接被制造出來的,需要虛擬地制造。Mock框架就是用來虛擬地制造對象及其方法、數據的。被虛擬制造出來的對象叫做Mock對象。Mock框架可以用來隔離依賴的對象,也可以隔離依賴的系統,從而確保單元測試執行的獨立性。此外,當多方共同開發不同模塊和系統時,對方僅提供接口,己方可以通過Mock進行聯調開發,從而實現并行工作。后期時,再進行集成和聯通測試。當線上系統需求變更時,可通過組合單元測試進行回歸測試,有力保證系統質量。
但現有Mock框架需要大量的硬編碼,其硬編碼的成本與測試用例(Test Case)的復雜度成正比,單元測試的覆蓋率越高,則Mock硬編碼的成本也相應越高。進而造成測試用例難以有效管理和維護,尤其在需求變更的時候。此外,現有的Mock框架難以和以集成測試為主的單元測試相融合。
在所述背景技術部分公開的上述信息僅用于加強對本發明的背景的理解,因此它可以包括不構成對本領域普通技術人員已知的現有技術的信息。
發明內容
本發明提供一種基于Mock的單元測試方法、裝置、設備及可讀存儲介質,能夠對測試用例集中管理,有效降低編碼成本。
本發明的其他特性和優點將通過下面的詳細描述變得顯然,或部分地通過本發明的實踐而習得。
根據本發明的一方面,提供一種基于Mock的單元測試方法,包括:當Mock對象被創建時,在預先配置好的至少一個測試用例中查找是否存在與Mock對象對應的映射類及映射方法;以及如果查找到映射類及映射方法,則:獲取映射方法;及當調用Mock對象的方法時,執行映射方法,并返回相應的Mock數據。
根據本發明的一實施方式,至少一個測試用例通過腳本語言進行配置。
根據本發明的一實施方式,獲取映射方法包括:通過字節碼增強,獲取映射方法。
根據本發明的一實施方式,獲取映射方法包括:通過Java動態代理,獲取映射方法。
根據本發明的一實施方式,在預先配置好的至少一個測試用例中查找是否存在與Mock對象對應的映射類及映射方法之前,還包括:從遠端數據庫中請求獲取至少一個測試用例。
根據本發明的另一方面,提供一種單元測試方法,包括:當Spring容器中的測試對象被注入時,在預先配置好的至少一個測試用例中查找是否存在與測試對象對應的映射類及映射方法;以及如果查找到映射類及映射方法,則:獲取映射方法;及當調用測試對象的方法時,執行映射方法,并返回相應的結果數據。
根據本發明的一實施方式,至少一個測試用例通過腳本語言進行配置。
根據本發明的一實施方式,獲取映射方法包括:通過Java動態代理,獲取映射方法。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京京東金融科技控股有限公司,未經北京京東金融科技控股有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811431921.8/2.html,轉載請聲明來源鉆瓜專利網。





