[發(fā)明專利]關(guān)聯(lián)源碼與測試用例的測試方法、系統(tǒng)、設(shè)備及存儲介質(zhì)在審
| 申請?zhí)枺?/td> | 202011606309.7 | 申請日: | 2020-12-28 |
| 公開(公告)號: | CN112597050A | 公開(公告)日: | 2021-04-02 |
| 發(fā)明(設(shè)計)人: | 陳超詠 | 申請(專利權(quán))人: | 上海品順信息科技有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 北京集佳知識產(chǎn)權(quán)代理有限公司 11227 | 代理人: | 王云曉 |
| 地址: | 201100 上海市*** | 國省代碼: | 上海;31 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 關(guān)聯(lián) 源碼 測試 方法 系統(tǒng) 設(shè)備 存儲 介質(zhì) | ||
本發(fā)明公開了一種關(guān)聯(lián)源碼與測試用例的測試方法、系統(tǒng)、設(shè)備及存儲介質(zhì),其中方法包括:在檢測到APP啟動時,開始全局掃描,進(jìn)行Hook添加;當(dāng)Hook添加完成后,在APP中展示用于錄制測試用例的懸浮欄;當(dāng)接收到通過所述懸浮欄輸入的測試用例ID和開始錄制指令時,執(zhí)行與所述測試用例ID對應(yīng)的測試用例;在執(zhí)行測試用例的過程中,通過Hook的方式記錄測試用例所覆蓋的源碼的方法名/類名;在測試用例執(zhí)行結(jié)束后,將記錄的測試用例所覆蓋的源碼的方法名/類名與所述測試用例ID進(jìn)行關(guān)聯(lián)并入庫。本發(fā)明可以實(shí)時獲悉執(zhí)行的測試用例所覆蓋的源碼的方法名/類名,避免了用戶錄入單個測試用例的執(zhí)行時間過長的問題,提高了測試效率和用戶體驗(yàn)。
技術(shù)領(lǐng)域
本發(fā)明涉及計算機(jī)技術(shù)領(lǐng)域,尤其涉及一種關(guān)聯(lián)源碼與測試用例的測試方法、系統(tǒng)、設(shè)備及存儲介質(zhì)。
背景技術(shù)
軟件測試是指在規(guī)定的條件下運(yùn)行一個程序,以找出程序錯誤,衡量軟件質(zhì)量,并評估其是否滿足設(shè)計要求的過程。在軟件測試領(lǐng)域,經(jīng)常使用測試用例來測試源碼。其中,測試用例是一組由前提條件、輸入、執(zhí)行條件、預(yù)期結(jié)果等組成,以完成對某個特定需求或者目標(biāo)測試的數(shù)據(jù),體現(xiàn)測試方案、方法、技術(shù)和策略的文檔。
目前,從業(yè)界來看,如果想要知道移動端iOS的測試用例覆蓋了源碼的哪些類名/哪些方法名是需要依賴代碼覆蓋率技術(shù)的,但由于移動端的代碼覆蓋率數(shù)據(jù)記錄在字節(jié)碼中,因此生成并非實(shí)時,而是需經(jīng)過執(zhí)行數(shù)據(jù)與符號數(shù)據(jù)的合并,這會導(dǎo)致用戶錄入單個測試用例的執(zhí)行代碼過長,耗費(fèi)的時間較多,效率也較低。
以上信息作為背景信息給出只是為了輔助理解本公開,并沒有確定或者承認(rèn)任意上述內(nèi)容是否可用作相對于本公開的現(xiàn)有技術(shù)。
發(fā)明內(nèi)容
本發(fā)明提供一種關(guān)聯(lián)源碼與測試用例的測試方法、系統(tǒng)、設(shè)備及存儲介質(zhì),以解決現(xiàn)有技術(shù)的不足。
為實(shí)現(xiàn)上述目的,本發(fā)明提供以下的技術(shù)方案:
第一方面,本發(fā)明實(shí)施例提供一種關(guān)聯(lián)源碼與測試用例的測試方法,所述方法包括:
在檢測到APP啟動時,開始全局掃描,進(jìn)行Hook添加;
當(dāng)Hook添加完成后,在APP中展示用于錄制測試用例的懸浮欄;
當(dāng)接收到通過所述懸浮欄輸入的測試用例ID和開始錄制指令時,執(zhí)行與所述測試用例ID對應(yīng)的測試用例;
在執(zhí)行測試用例的過程中,通過Hook的方式記錄測試用例所覆蓋的源碼的方法名/類名;
在測試用例執(zhí)行結(jié)束后,將記錄的測試用例所覆蓋的源碼的方法名/類名與所述測試用例ID進(jìn)行關(guān)聯(lián)并入庫。
進(jìn)一步地,所述關(guān)聯(lián)源碼與測試用例的測試方法中,所述在檢測到APP啟動時,開始全局掃描,進(jìn)行Hook添加的步驟包括:
在檢測到APP啟動時,通過動態(tài)地址符號解析方法進(jìn)行全局掃描,以掃描出源碼的類名;
根據(jù)預(yù)設(shè)的類名黑名單過濾掃描出的源碼的類名,得到類名集合;
通過class_copyMethodList提取出所述類名集合中每個類名下的方法名;
根據(jù)預(yù)設(shè)的方法名黑名單過濾提取出的方法名,并過濾掉getter/setter方法名,得到類名/方法名集合;
在所述類名/方法名集合中插入預(yù)設(shè)的Hook代碼,完成Hook添加。
進(jìn)一步地,所述關(guān)聯(lián)源碼與測試用例的測試方法中,所述在檢測到APP啟動時,通過動態(tài)地址符號解析方法進(jìn)行全局掃描,以掃描出源碼的類名的步驟包括:
在檢測到APP啟動時,檢測測試開關(guān)是否開啟;
若是,則通過動態(tài)地址符號解析方法進(jìn)行全局掃描,以掃描出源碼的類名。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于上海品順信息科技有限公司,未經(jīng)上海品順信息科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011606309.7/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 關(guān)聯(lián)裝置
- 數(shù)據(jù)關(guān)聯(lián)裝置和數(shù)據(jù)關(guān)聯(lián)方法
- 安全關(guān)聯(lián)
- 設(shè)備關(guān)聯(lián)
- 終端關(guān)聯(lián)裝置和終端關(guān)聯(lián)方法
- 關(guān)聯(lián)方法和關(guān)聯(lián)設(shè)備
- 關(guān)聯(lián)方法和關(guān)聯(lián)設(shè)備
- 關(guān)聯(lián)方法和關(guān)聯(lián)設(shè)備
- 關(guān)聯(lián)分析方法和關(guān)聯(lián)分析系統(tǒng)
- 報文關(guān)聯(lián)方法、報文關(guān)聯(lián)裝置及報文關(guān)聯(lián)系統(tǒng)
- 坐席資源碼的分配方法和分配系統(tǒng)
- 一種服務(wù)器軟件源碼開發(fā)管理方法
- 基于源碼庫上傳容器鏡像至鏡像倉庫的方法及系統(tǒng)
- 一種漏洞檢測方法、裝置、服務(wù)器及存儲介質(zhì)
- 商品的溯源碼關(guān)聯(lián)方法及裝置
- 一種基于數(shù)據(jù)可執(zhí)行特征的網(wǎng)頁后門檢測方法與系統(tǒng)
- 文件打包方法、裝置、設(shè)備及存儲介質(zhì)
- 源碼轉(zhuǎn)換方法、裝置、計算機(jī)設(shè)備及可讀存儲介質(zhì)
- 一種多人模式下修改源碼文件的方法、系統(tǒng)及介質(zhì)
- 一種牲畜胴體表皮溯源碼噴印方法、噴碼機(jī)、溯源碼和服務(wù)器





