[發(fā)明專利]一種C接口函數(shù)的測試方法及系統(tǒng)有效
| 申請?zhí)枺?/td> | 201710352233.1 | 申請日: | 2017-05-18 |
| 公開(公告)號: | CN107247665B | 公開(公告)日: | 2020-06-26 |
| 發(fā)明(設(shè)計)人: | 張紅嬌;張慶勇;李偉 | 申請(專利權(quán))人: | 北京信安世紀(jì)科技股份有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 北京同達(dá)信恒知識產(chǎn)權(quán)代理有限公司 11291 | 代理人: | 黃志華 |
| 地址: | 100093 北京市*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 接口 函數(shù) 測試 方法 系統(tǒng) | ||
1.一種C接口函數(shù)的測試方法,其特征在于,包括:
測試系統(tǒng)確定滿足預(yù)設(shè)的測試條件的情況下,基于預(yù)先配置的測試數(shù)據(jù)信息庫,生成執(zhí)行隊列和數(shù)據(jù)隊列,其中,所述執(zhí)行隊列包含所述測試數(shù)據(jù)信息庫中記錄的所有C接口函數(shù)的函數(shù)名稱,所述數(shù)據(jù)隊列包含所述測試數(shù)據(jù)信息庫中記錄的所有C接口函數(shù)的數(shù)據(jù)信息;
所述測試系統(tǒng)根據(jù)所述執(zhí)行隊列中的各個C接口函數(shù)的函數(shù)名稱,確定出待測試的所有C接口函數(shù),并循環(huán)執(zhí)行以下操作,直至所有C接口函數(shù)測試完畢為止:
從所述執(zhí)行隊列中獲取一個C接口函數(shù)作為當(dāng)前C接口函數(shù);
從所述數(shù)據(jù)隊列中獲取所述當(dāng)前C接口函數(shù)的數(shù)據(jù)信息,從所述當(dāng)前C接口函數(shù)的數(shù)據(jù)信息中獲取所述當(dāng)前C接口函數(shù)的各個參數(shù),并將獲得的各個參數(shù)提供給所述當(dāng)前C接口函數(shù),獲取所述當(dāng)前C接口函數(shù)的返回值;
將所述返回值與所述當(dāng)前C接口函數(shù)的預(yù)期值進(jìn)行匹配,基于匹配結(jié)果確定所述當(dāng)前C接口函數(shù)是否測試通過;
確定所述當(dāng)前C接口函數(shù)測試完畢。
2.如權(quán)利要求1所述的方法,其特征在于,測試系統(tǒng)從所述執(zhí)行隊列中獲取一個C接口函數(shù)作為當(dāng)前C接口函數(shù)之后,從所述數(shù)據(jù)隊列中獲取所述當(dāng)前C接口函數(shù)的數(shù)據(jù)信息之前,進(jìn)一步包括:
測試系統(tǒng)判斷預(yù)先建立的注冊函數(shù)數(shù)據(jù)庫中是否存在所述當(dāng)前C接口函數(shù)的函數(shù)說明,并在確定所述注冊函數(shù)數(shù)據(jù)庫中存在所述當(dāng)前C接口函數(shù)的函數(shù)說明的情況下,認(rèn)定所述當(dāng)前C接口函數(shù)已注冊。
3.如權(quán)利要求1所述的方法,其特征在于,測試系統(tǒng)將獲得的各個參數(shù)提供給所述當(dāng)前C接口函數(shù),包括:
測試系統(tǒng)分別為獲得的各個參數(shù)分配存儲空間;
測試系統(tǒng)將各個參數(shù)存儲至各自對應(yīng)的存儲空間中,并將存儲在各自對應(yīng)的存儲空間中的各個參數(shù)提供給所述當(dāng)前C接口函數(shù)。
4.如權(quán)利要求3所述的方法,其特征在于,測試系統(tǒng)分別為獲得的各個參數(shù)分配存儲空間,包括:
測試系統(tǒng)獲取各個參數(shù)的參數(shù)類型,其中,各個參數(shù)的參數(shù)類型是按照預(yù)先配置的參數(shù)類型定義規(guī)則定義的;
測試系統(tǒng)按照與參數(shù)類型相關(guān)聯(lián)的存儲空間分配方式,分別為各個參數(shù)分配相應(yīng)的存儲空間。
5.如權(quán)利要求4所述的方法,其特征在于,測試系統(tǒng)按照與參數(shù)類型相關(guān)聯(lián)的存儲空間分配方式,分別為各個參數(shù)分配相應(yīng)的存儲空間,包括:
測試系統(tǒng)針對各個參數(shù),若所述參數(shù)的參數(shù)類型為輸入類型、引用類型和全局類型中的任意一種,則基于預(yù)先建立的參數(shù)類型與存儲空間大小之間的關(guān)聯(lián)關(guān)系,確定所述參數(shù)的存儲空間大小,并按照確定出的存儲空間大小,為所述參數(shù)分配存儲空間;若所述參數(shù)的參數(shù)類型為輸出類型,則獲取所述當(dāng)前C接口函數(shù)的輸出空間預(yù)測值,并按照獲得的所述輸出空間預(yù)測值,為所述參數(shù)分配存儲空間。
6.如權(quán)利要求3-5任一項(xiàng)所述的方法,其特征在于,還包括:測試系統(tǒng)若確定滿足預(yù)設(shè)的空間釋放條件,則釋放為各個參數(shù)分配的存儲空間。
7.如權(quán)利要求1所述的方法,其特征在于,測試系統(tǒng)將獲得的各個參數(shù)提供給所述當(dāng)前C接口函數(shù),包括:
測試系統(tǒng)從預(yù)先加載的包含所有C接口函數(shù)的函數(shù)入口地址的動態(tài)數(shù)據(jù)庫中,獲取所述當(dāng)前C接口函數(shù)的函數(shù)入口地址,并基于獲得的所述當(dāng)前C接口函數(shù)的函數(shù)入口地址,將各個參數(shù)提供給所述當(dāng)前C接口函數(shù)。
8.如權(quán)利要求1-5或7任一項(xiàng)所述的方法,其特征在于,進(jìn)一步包括:
測試系統(tǒng)確定所有C接口函數(shù)的測試完畢的情況下,統(tǒng)計測試通過的C接口函數(shù)的數(shù)目和函數(shù)名稱,以及測試不通過的C接口函數(shù)的數(shù)目和函數(shù)名稱,并基于測試通過的C接口函數(shù)的數(shù)目和函數(shù)名稱以及測試不通過的C接口函數(shù)的數(shù)目和函數(shù)名稱,生成測試結(jié)果文件。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京信安世紀(jì)科技股份有限公司,未經(jīng)北京信安世紀(jì)科技股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710352233.1/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





