[發明專利]測試方法、裝置、計算機可讀存儲介質和計算機設備在審
| 申請號: | 201811117059.3 | 申請日: | 2018-09-25 |
| 公開(公告)號: | CN109359036A | 公開(公告)日: | 2019-02-19 |
| 發明(設計)人: | 陳六四 | 申請(專利權)人: | 騰訊科技(深圳)有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 廣州華進聯合專利商標代理有限公司 44224 | 代理人: | 李文淵;何平 |
| 地址: | 518000 廣東省深圳*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 目標函數 模擬函數 測試代碼 測試 計算機可讀存儲介質 計算機設備 調用 編譯 跳轉指令 返回 跳轉 申請 | ||
1.一種測試方法,包括:
編譯被測試代碼所對應的測試用例;所述被測試代碼包括用于編譯所述測試用例時調用的目標函數;
當所述目標函數被調用時,通過執行與所述目標函數對應的跳轉指令,跳轉至與所述目標函數對應的模擬函數;所述目標函數與所述模擬函數功能相同;
執行所述模擬函數,得到所述模擬函數的返回值;
根據所述返回值確定所述被測試代碼的測試結果。
2.根據權利要求1所述的方法,其特征在于,所述方法還包括:
通過測試宏設置所述模擬函數的期望輸入值和相應的返回值;
將所述期望輸入值和相應的返回值傳遞至模擬管理單元存儲;
執行所述模擬函數,得到所述模擬函數的返回值,包括:
通過所述模擬函數將接收到的輸入值傳遞至模擬管理單元;
通過所述模擬管理單元確定與所述輸入值一致的期望輸入值,并將確定的所述期望輸入值相應的返回值作為所述模擬函數的返回值。
3.根據權利要求2所述的方法,其特征在于,所述通過測試宏設置所述目標函數的期望輸入值和相應的返回值,包括:
通過函數生成宏,生成鉤子函數、設置函數和與所述目標函數對應的模擬函數;
通過測試宏,調用所述設置函數設置所述模擬函數的期望輸入值和相應的返回值;
所述方法還包括:
通過所述測試宏調用所述鉤子函數設置與所述目標函數對應的跳轉指令。
4.根據權利要求1所述的方法,其特征在于,所述目標函數為類的成員函數;所述方法還包括:
根據所述目標函數所在類的頭文件生成模擬類的頭文件;所述模擬類的頭文件用于嵌入所述測試用例;
通過模擬類定義宏,生成所述目標函數所在類的模擬類并生成鉤子變量;所述鉤子變量用于管理模擬函數的函數地址;
通過函數生成宏生成與所述目標函數對應的模擬函數和鉤子函數;所述目標函數與所述模擬函數的參數類型和參數數量相同;所述鉤子函數用于通過所述鉤子變量控制在調用所述目標函數時由跳轉指令跳轉至調用所述模擬函數。
5.根據權利要求4所述的方法,其特征在于,所述模擬類定義宏包括第一模擬類定義宏和第二模擬類定義宏;所述第一模擬類定義宏根據各非模板類的共性特征生成,用于生成非模板類所對應的模擬類;所述第二模擬類定義宏根據各模板類的共性特征生成,用于生成模板類所對應的模擬類;所述第二模擬類定義宏攜帶模板類的模板參數數量。
6.根據權利要求4所述的方法,其特征在于,所述通過函數生成宏,生成與所述目標函數對應的模擬函數和鉤子函數,包括:
當所述目標函數為一般函數時,通過一般函數生成宏生成所述一般函數對應的模擬函數和鉤子函數;所述一般函數生成宏攜帶所述一般函數的函數名和所述一般函數的函數類型;
當所述目標函數為靜態函數時,通過靜態函數生成宏生成所述靜態函數對應的模擬函數和鉤子函數;所述靜態函數生成宏攜帶所述靜態函數的函數名和所述靜態函數的函數類型。
7.根據權利要求4所述的方法,其特征在于,所述目標函數包括模板函數;所述模板函數所在類的模擬類的生成步驟包括:
按照所述模板函數的參數數量對所述模板函數進行分類;
確定分類得到的分類類別的數量;
對應每個所述分類類別分別生成模擬類。
8.根據權利要求7所述的方法,所述目標函數還包括非模板函數;所述模板函數所在類的模擬類的生成步驟還包括:
生成與所述非模板函數對應的模擬類。
9.根據權利要求4-7中任一項所述的方法,其特征在于,所述方法還包括:
通過別名定義宏生成所述目標函數所在類的第一別名;所述別名定義宏攜帶所述目標函數所在類的類名;所述第一別名用于調用目標函數時引用;
通過所述模擬類定義宏生成所述模擬類的第二別名;所述模擬類定義宏攜帶所述模擬類的類名;所述第二別名用于調用模擬函數時引用。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于騰訊科技(深圳)有限公司,未經騰訊科技(深圳)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811117059.3/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種代碼質量實時跟蹤方法
- 下一篇:一種公用設備的管理方法、存儲介質和服務器





