本技術(shù)實(shí)施例涉及計(jì)算機(jī),尤其涉及一種sdk功能接入檢測(cè)方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)。
背景技術(shù):
1、sdk是指軟件開(kāi)發(fā)工具包(software?development?kit),也稱為開(kāi)發(fā)包或者開(kāi)發(fā)工具包。sdk通常是由一個(gè)或多個(gè)軟件開(kāi)發(fā)工具組成的集合,用于幫助開(kāi)發(fā)者創(chuàng)建、測(cè)試和部署軟件應(yīng)用程序。在游戲發(fā)行時(shí)大多需要游戲研發(fā)團(tuán)隊(duì)接入游戲發(fā)行團(tuán)隊(duì)的sdk,接入完成后,發(fā)行團(tuán)隊(duì)會(huì)檢測(cè)sdk接入是否正常,以確保sdk在應(yīng)用內(nèi)能夠正常工作。
2、相關(guān)技術(shù)中,通過(guò)人工獲取sdk日志,并根據(jù)開(kāi)發(fā)者提供的sdk接入文檔進(jìn)行日志查看和分析,如在獲取到sdk日志后,通過(guò)代碼分析工具對(duì)日志中的代碼進(jìn)行靜態(tài)分析,找出目標(biāo)功能的函數(shù)調(diào)用關(guān)系,從而對(duì)函數(shù)調(diào)用關(guān)系進(jìn)行分析確定目標(biāo)功能是否被調(diào)用成功。該測(cè)試方法影響功能接入測(cè)試的效率和準(zhǔn)確性。
技術(shù)實(shí)現(xiàn)思路
1、本技術(shù)實(shí)施例提供一種sdk功能接入檢測(cè)方法、裝置、設(shè)備及存儲(chǔ)介質(zhì),解決了sdk功能接入測(cè)試效率低以及測(cè)試準(zhǔn)確性差的問(wèn)題,通過(guò)自動(dòng)獲取sdk日志文件,并自動(dòng)識(shí)別sdk日志文件中是否存在目標(biāo)功能對(duì)應(yīng)的目標(biāo)日志語(yǔ)句的方式提高了功能接入測(cè)試的效率,根據(jù)預(yù)設(shè)關(guān)鍵字確定必填的目標(biāo)操作數(shù)據(jù),并對(duì)目標(biāo)操作數(shù)據(jù)進(jìn)行檢測(cè)能夠保證功能接入測(cè)試的準(zhǔn)確性。
2、在第一方面,本技術(shù)實(shí)施例提供了一種sdk功能接入檢測(cè)方法,包括:
3、實(shí)時(shí)獲取sdk日志文件,對(duì)所述sdk日志文件進(jìn)行日志解析,得到功能接口參數(shù),所述功能接口參數(shù)包括功能接口標(biāo)識(shí)和功能接口的操作數(shù)據(jù);
4、根據(jù)所述功能接口標(biāo)識(shí)確定目標(biāo)函數(shù),根據(jù)所述目標(biāo)函數(shù)在所述sdk日志文件的位置確定目標(biāo)識(shí)別范圍,在所述目標(biāo)識(shí)別范圍內(nèi)進(jìn)行日志語(yǔ)句識(shí)別,得到待檢測(cè)日志語(yǔ)句;
5、判斷所述待檢測(cè)日志語(yǔ)句是否與預(yù)設(shè)日志語(yǔ)句匹配,在所述待檢測(cè)日志語(yǔ)句與所述預(yù)設(shè)日志語(yǔ)句匹配的情況下,基于預(yù)設(shè)關(guān)鍵字對(duì)所述功能接口的操作數(shù)據(jù)進(jìn)行目標(biāo)數(shù)據(jù)篩選,得到包含所述預(yù)設(shè)關(guān)鍵字的目標(biāo)操作數(shù)據(jù);
6、對(duì)所述目標(biāo)操作數(shù)據(jù)分別進(jìn)行完整性檢測(cè)和合規(guī)性檢測(cè),基于完整性檢測(cè)結(jié)果和合規(guī)性檢測(cè)結(jié)果生成功能接入檢測(cè)報(bào)告。
7、可選的,所述根據(jù)所述目標(biāo)函數(shù)在所述sdk日志文件的位置確定目標(biāo)識(shí)別范圍,包括:
8、根據(jù)所述目標(biāo)函數(shù)在所述sdk日志文件的位置確定所述目標(biāo)函數(shù)的函數(shù)入口位置和函數(shù)出口位置;
9、分別定位所述函數(shù)入口位置的初始字符和所述函數(shù)出口位置的結(jié)束字符,根據(jù)所述初始字符確定第一目標(biāo)識(shí)別范圍,根據(jù)所述結(jié)束字符確定第二目標(biāo)識(shí)別范圍。
10、可選的,所述在所述目標(biāo)識(shí)別范圍內(nèi)進(jìn)行日志語(yǔ)句識(shí)別,得到待檢測(cè)日志語(yǔ)句,包括:
11、在所述第一目標(biāo)識(shí)別范圍內(nèi)進(jìn)行日志語(yǔ)句識(shí)別,得到執(zhí)行開(kāi)始日志語(yǔ)句,在所述第二目標(biāo)識(shí)別范圍內(nèi)進(jìn)行日志語(yǔ)句識(shí)別,得到執(zhí)行結(jié)束日志語(yǔ)句;
12、相應(yīng)的,所述判斷所述待檢測(cè)日志語(yǔ)句是否與預(yù)設(shè)日志語(yǔ)句匹配,包括:
13、判斷所述執(zhí)行開(kāi)始日志語(yǔ)句的語(yǔ)句內(nèi)容是否與預(yù)設(shè)開(kāi)始語(yǔ)句的語(yǔ)句內(nèi)容相同,以及所述執(zhí)行結(jié)束日志語(yǔ)句的語(yǔ)句內(nèi)容是否與預(yù)設(shè)結(jié)束語(yǔ)句的語(yǔ)句內(nèi)容相同。
14、可選的,所述對(duì)所述目標(biāo)操作數(shù)據(jù)分別進(jìn)行完整性檢測(cè)和合規(guī)性檢測(cè),包括:
15、根據(jù)所述目標(biāo)操作數(shù)據(jù)中的預(yù)設(shè)關(guān)鍵字對(duì)所述目標(biāo)操作數(shù)據(jù)進(jìn)行分類處理,得到多個(gè)分類數(shù)據(jù);
16、檢測(cè)各分類數(shù)據(jù)的數(shù)據(jù)量是否滿足相應(yīng)的預(yù)設(shè)數(shù)據(jù)量閾值,在滿足所述預(yù)設(shè)數(shù)據(jù)量閾值的情況下,根據(jù)檢測(cè)時(shí)間順序生成各分類數(shù)據(jù)對(duì)應(yīng)的完整性標(biāo)識(shí),基于各完整性標(biāo)識(shí)進(jìn)行完整性檢測(cè);以及,
17、判斷所述各分類數(shù)據(jù)的數(shù)據(jù)類型,根據(jù)所述各分類數(shù)據(jù)的數(shù)據(jù)類型確定所述各分類數(shù)據(jù)的合規(guī)性檢測(cè)規(guī)則,基于各合規(guī)性檢測(cè)規(guī)則對(duì)相應(yīng)分類數(shù)據(jù)進(jìn)行合規(guī)性檢測(cè)。
18、可選的,所述基于各完整性標(biāo)識(shí)進(jìn)行完整性檢測(cè),包括:
19、根據(jù)所述各完整性標(biāo)識(shí)的連續(xù)性和所述各完整性標(biāo)識(shí)的總數(shù)量對(duì)所述目標(biāo)操作數(shù)據(jù)進(jìn)行完整性檢測(cè)。
20、可選的,所述判斷所述各分類數(shù)據(jù)的數(shù)據(jù)類型,根據(jù)所述各分類數(shù)據(jù)的數(shù)據(jù)類型確定所述各分類數(shù)據(jù)的合規(guī)性檢測(cè)規(guī)則,包括:
21、在所述分類數(shù)據(jù)為文本型數(shù)據(jù)的情況下,確定所述分類數(shù)據(jù)的合規(guī)性檢測(cè)規(guī)則為數(shù)據(jù)長(zhǎng)度檢測(cè)規(guī)則;
22、在所述分類數(shù)據(jù)為數(shù)值型數(shù)據(jù)的情況下,確定所述分類數(shù)據(jù)的合規(guī)性檢測(cè)規(guī)則為數(shù)據(jù)范圍檢測(cè)規(guī)則;
23、在所述分類數(shù)據(jù)為字符型數(shù)據(jù)的情況下,確定所述分類數(shù)據(jù)的合規(guī)性檢測(cè)規(guī)則為數(shù)據(jù)安全性檢測(cè)規(guī)則。
24、可選的,所述基于完整性檢測(cè)結(jié)果和合規(guī)性檢測(cè)結(jié)果生成功能接入檢測(cè)報(bào)告,包括:
25、判斷所述完整性檢測(cè)結(jié)果是否為檢測(cè)通過(guò),在未檢測(cè)通過(guò)的情況下,根據(jù)所述完整性檢測(cè)結(jié)果確定非完整性標(biāo)識(shí)的分類數(shù)據(jù);
26、根據(jù)所述分類數(shù)據(jù)和所述合規(guī)性檢測(cè)結(jié)果生成功能接入測(cè)試報(bào)告。
27、在第二方面,本技術(shù)實(shí)施例提供了一種sdk功能接入檢測(cè)裝置,包括:
28、日志解析模塊,用于實(shí)時(shí)獲取sdk日志文件,對(duì)所述sdk日志文件進(jìn)行日志解析,得到功能接口參數(shù),所述功能接口參數(shù)包括功能接口標(biāo)識(shí)和功能接口的操作數(shù)據(jù);
29、目標(biāo)數(shù)據(jù)確定模塊,用于根據(jù)所述功能接口標(biāo)識(shí)確定目標(biāo)函數(shù),根據(jù)所述目標(biāo)函數(shù)在所述sdk日志文件的位置確定目標(biāo)識(shí)別范圍;
30、待檢測(cè)日志語(yǔ)句識(shí)別模塊,用于在所述目標(biāo)識(shí)別范圍內(nèi)進(jìn)行日志語(yǔ)句識(shí)別,得到待檢測(cè)日志語(yǔ)句;
31、日志語(yǔ)句匹配模塊,用于判斷所述待檢測(cè)日志語(yǔ)句是否與預(yù)設(shè)日志語(yǔ)句匹配;
32、目標(biāo)數(shù)據(jù)篩選模塊,用于在所述待檢測(cè)日志語(yǔ)句與所述預(yù)設(shè)日志語(yǔ)句匹配的情況下,基于預(yù)設(shè)關(guān)鍵字對(duì)所述功能接口的操作數(shù)據(jù)進(jìn)行目標(biāo)數(shù)據(jù)篩選,得到包含所述預(yù)設(shè)關(guān)鍵字的目標(biāo)操作數(shù)據(jù);
33、數(shù)據(jù)檢測(cè)模塊,用于對(duì)所述目標(biāo)操作數(shù)據(jù)分別進(jìn)行完整性檢測(cè)和合規(guī)性檢測(cè);
34、測(cè)試報(bào)告生成模塊:用于基于完整性檢測(cè)結(jié)果和合規(guī)性檢測(cè)結(jié)果生成功能接入檢測(cè)報(bào)告。
35、在第三方面,本技術(shù)實(shí)施例提供了一種電子設(shè)備,所述設(shè)備包括:一個(gè)或多個(gè)處理器;存儲(chǔ)裝置,配置為存儲(chǔ)一個(gè)或多個(gè)程序,當(dāng)所述一個(gè)或多個(gè)程序被所述一個(gè)或多個(gè)處理器執(zhí)行,使得所述一個(gè)或多個(gè)處理器實(shí)現(xiàn)第一方面所述的sdk功能接入檢測(cè)方法。
36、在第四方面,本技術(shù)實(shí)施例提供了一種包含計(jì)算機(jī)可執(zhí)行指令的存儲(chǔ)介質(zhì),所述計(jì)算機(jī)可執(zhí)行指令在由計(jì)算機(jī)處理器執(zhí)行時(shí)用于執(zhí)行如第一方面所述的sdk功能接入檢測(cè)方法。
37、本技術(shù)實(shí)施例實(shí)時(shí)獲取sdk日志文件,對(duì)sdk日志文件進(jìn)行日志解析,得到功能接口參數(shù),功能接口參數(shù)包括功能接口標(biāo)識(shí)和功能接口的操作數(shù)據(jù);根據(jù)功能接口標(biāo)識(shí)確定目標(biāo)函數(shù),根據(jù)目標(biāo)函數(shù)在sdk日志文件的位置確定目標(biāo)識(shí)別范圍,在目標(biāo)識(shí)別范圍內(nèi)進(jìn)行日志語(yǔ)句識(shí)別,得到待檢測(cè)日志語(yǔ)句;判斷待檢測(cè)日志語(yǔ)句是否與預(yù)設(shè)日志語(yǔ)句匹配,在待檢測(cè)日志語(yǔ)句與預(yù)設(shè)日志語(yǔ)句匹配的情況下,基于預(yù)設(shè)關(guān)鍵字對(duì)功能接口的操作數(shù)據(jù)進(jìn)行目標(biāo)數(shù)據(jù)篩選,得到包含預(yù)設(shè)關(guān)鍵字的目標(biāo)操作數(shù)據(jù);對(duì)目標(biāo)操作數(shù)據(jù)分別進(jìn)行完整性檢測(cè)和合規(guī)性檢測(cè),基于完整性檢測(cè)結(jié)果和合規(guī)性檢測(cè)結(jié)果生成功能接入檢測(cè)報(bào)告。能夠通過(guò)自動(dòng)獲取sdk日志文件,并自動(dòng)識(shí)別sdk日志文件中是否存在目標(biāo)功能對(duì)應(yīng)的目標(biāo)日志語(yǔ)句的方式提高了功能接入測(cè)試的效率,通過(guò)確定必填的目標(biāo)操作數(shù)據(jù),并對(duì)目標(biāo)操作數(shù)據(jù)進(jìn)行檢測(cè)能夠保證功能接入測(cè)試的準(zhǔn)確性。