亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種逆向回溯精準測試方法及系統(tǒng)與流程

文檔序號:40383991發(fā)布日期:2024-12-20 12:06閱讀:4來源:國知局
一種逆向回溯精準測試方法及系統(tǒng)與流程

本發(fā)明涉及汽車租賃行業(yè)的營銷自動化和大數(shù)據(jù),具體涉及一種逆向回溯精準測試方法及系統(tǒng)。


背景技術:

1、逆向回溯指的就是解決qa(quality?assurance,測試工程師)到底實際要測哪些內容的問題,避免qa的全量回歸,實現(xiàn)了對代碼變更的的評估,讓qa的回歸更具有針對性,避免全量回歸的資源浪費。

2、目前現(xiàn)有技術中采用可觀測分析平臺及應用管理系統(tǒng)在線上實時通過探針自動收集所需要的指標,進行分布式追蹤。通過這些調用鏈路數(shù)據(jù),在應用提測后,將變更代碼對應接口與調用鏈數(shù)據(jù)進行匹配獲取相應范圍,此方法配套設施成本巨大,在微服務架構下,每一次用戶請求可能會產生大量的調用鏈數(shù)據(jù),調用鏈數(shù)據(jù)通常需要保留較長時間,以便于故障診斷、性能分析等。即使采用數(shù)據(jù)壓縮和聚合策略,長期保留的大量數(shù)據(jù)也會導致存儲成本持續(xù)升高。java項目本身有入侵性,作為一個外部代理程序,可觀測分析平臺的運行可能會對應用程序的業(yè)務邏輯產生影響。如果代理程序的行為不可控或存在漏洞,都可能會給應用程序的安全性和穩(wěn)定性帶來隱患。


技術實現(xiàn)思路

1、本發(fā)明的目的是為了提供一種逆向回溯精準測試方法及系統(tǒng)。本發(fā)明旨在解決現(xiàn)有的逆向回溯測試方法中在微服務架構下,產生大量的調用鏈數(shù)據(jù)、并會對應用程序的業(yè)務邏輯產生影響,使得其存在配套設施成本巨大、給應用程序的安全性和穩(wěn)定性帶來隱患的問題。

2、為達到上述目的,本發(fā)明通過以下技術方案實現(xiàn):

3、一方面,本發(fā)明提供一種逆向回溯精準測試方法,其用于計算機程序的代碼變更測試,所述方法包括:

4、步驟s1:開啟測試任務,根據(jù)所述測試任務,選擇提測開發(fā)分支,根據(jù)預定的持續(xù)集成工具,觸發(fā)測試任務項目的構建;

5、步驟s2:將所述開發(fā)分支的代碼與計算機程序的主分支的代碼進行對比,獲取所述開發(fā)分支和所述主分支的代碼差異;

6、步驟s3:根據(jù)所述代碼差異,獲取所述測試任務影響的接口;

7、步驟s4:根據(jù)所述影響的接口,分別獲取動態(tài)調用鏈和靜態(tài)調用鏈;

8、步驟s5:根據(jù)所述動態(tài)調用鏈和所述靜態(tài)調用鏈,得到對應的上、下游接口鏈路,生成調用報告。

9、優(yōu)選的,所述獲取動態(tài)調用鏈包括:根據(jù)所述影響的接口,獲取計算機程序的線上接口調用鏈。

10、優(yōu)選的,所述動態(tài)調用鏈在所述計算機程序的請求日志庫中獲取。

11、優(yōu)選的,對所述請求日志庫的日志數(shù)據(jù)結構進行設計,以用于構建動態(tài)調用鏈,所述請求日志庫中日志數(shù)據(jù)結構的設計包括:定義一結構化的日志數(shù)據(jù)對象,所述日志數(shù)據(jù)對象中包括預定的信息。

12、優(yōu)選的,所述預定的信息包括:全局唯一的請求標識、當前服務的請求標識、調用鏈上一個節(jié)點的標識、當前服務名稱、當前主機名、被調用的方法名,方法入?yún)?、方法返回值及日志記錄時間戳。

13、優(yōu)選的,所述的獲取靜態(tài)調用鏈包括:采用自動化工具,對所述測試任務的代碼文件進行掃描和分析,獲取所述代碼文件中變更的接口調用。

14、優(yōu)選的,采用自動化工具,對所述測試任務的代碼文件進行掃描和分析,獲取所述代碼文件中變更的接口調用,其具體包括:

15、基于調用接口的調用類庫,掃描所述測試任務項目中的代碼文件;

16、分析所述代碼文件中調用的服務,得到分析結果;

17、根據(jù)所述分析結果,構建靜態(tài)調用鏈;

18、將構建的所述靜態(tài)調用鏈存儲至數(shù)據(jù)庫或文件系統(tǒng)中。

19、優(yōu)選的,所述構建靜態(tài)調用鏈包括:將所述分析結果組裝成一有向圖數(shù)據(jù)結構;

20、所述有向圖數(shù)據(jù)結構上每一節(jié)點表示一個服務,所述有向圖數(shù)據(jù)結構上每一邊表示不同服務之間的調用關系;

21、所述有向圖數(shù)據(jù)結構上每一節(jié)點均包括:服務名稱、接口名稱和方法簽名。

22、優(yōu)選的,采用git工具和抽象語法樹解析器,對所述計算機程序中的代碼變更進行動態(tài)分析,獲取所述測試任務提交后的靜態(tài)調用鏈,將其與所述測試任務提交前的靜態(tài)調用鏈進行對比,以識別所述測試任務的代碼文件對所述靜態(tài)調用鏈的影響。

23、另一方面,本發(fā)明還提供一種逆向回溯精準測試系統(tǒng),其用于實現(xiàn)上述的逆向回溯精準測試方法。

24、與現(xiàn)有技術相比,本發(fā)明具有以下有益效果:

25、本發(fā)明提供的逆向回溯精準測試方法及系統(tǒng),所述測試方法中靜態(tài)代碼分析可以掃描整個變更的代碼,識別本次所有版本受變更影響的接口和下游依賴;動態(tài)調用鏈監(jiān)控則能保證捕獲線上的應用的調用鏈路;兩種處理方式相結合,可以獲得應用的完整影響范圍,確保測試的全面性。大大減少了發(fā)布周期中回歸測試的成本。本發(fā)明全部基于原始應用中應有的基礎設施進行改造適配,大大的降低了相關成本,提高了精準測試在中小型公司落地的可能性。



技術特征:

1.一種逆向回溯精準測試方法,其特征在于,其用于計算機程序的代碼變更測試,所述方法包括:

2.如權利要求1所述的逆向回溯精準測試方法,其特征在于,所述獲取動態(tài)調用鏈包括:根據(jù)所述影響的接口,獲取計算機程序的線上接口調用鏈。

3.如權利要求2所述的逆向回溯精準測試方法,其特征在于,所述動態(tài)調用鏈在所述計算機程序的請求日志庫中獲取。

4.如權利要求3所述的逆向回溯精準測試方法,其特征在于,對所述請求日志庫的日志數(shù)據(jù)結構進行設計,以用于構建動態(tài)調用鏈,所述日志數(shù)據(jù)結構的設計包括:定義一結構化的日志數(shù)據(jù)對象,所述日志數(shù)據(jù)對象中包括預定的信息。

5.如權利要求4所述的逆向回溯精準測試方法,其特征在于,所述預定的信息包括:全局唯一的請求標識、當前服務的請求標識、調用鏈上一個節(jié)點的標識、當前服務名稱、當前主機名、被調用的方法名,方法入?yún)ⅰ⒎椒ǚ祷刂导叭罩居涗洉r間戳。

6.如權利要求5所述的逆向回溯精準測試方法,其特征在于,所述的獲取靜態(tài)調用鏈包括:采用自動化工具,對所述測試任務的代碼文件進行掃描和分析,獲取所述代碼文件中變更的接口調用。

7.如權利要求1所述的逆向回溯精準測試方法,其特征在于,采用自動化工具,對所述測試任務的代碼文件進行掃描和分析,獲取所述代碼文件中變更的接口調用,其具體包括:

8.如權利要求7所述的逆向回溯精準測試方法,其特征在于,所述構建靜態(tài)調用鏈包括:將所述分析結果組裝成一有向圖數(shù)據(jù)結構;

9.如權利要求7所述的逆向回溯精準測試方法,其特征在于,采用git工具和抽象語法樹解析器,對所述計算機程序中的代碼變更進行動態(tài)分析,獲取所述測試任務提交后的靜態(tài)調用鏈,將其與所述測試任務提交前的靜態(tài)調用鏈進行對比,以識別所述測試任務的代碼文件對所述靜態(tài)調用鏈的影響。

10.一種逆向回溯精準測試系統(tǒng),其特征在于,其用于實現(xiàn)權利要求1-9中任一所述的逆向回溯精準測試方法。


技術總結
本發(fā)明公開了一種逆向回溯精準測試方法及系統(tǒng),所述方法包括:步驟S1:開啟測試任務,根據(jù)所述測試任務,選擇提測開發(fā)分支,根據(jù)預定的持續(xù)集成工具,觸發(fā)測試任務項目的構建;步驟S2:獲取所述開發(fā)分支和所述主分支的代碼差異;步驟S3:獲取所述測試任務影響的接口;步驟S4:分別獲取動態(tài)調用鏈和靜態(tài)調用鏈;步驟S5:生成調用報告。本發(fā)明基于靜態(tài)代碼掃描和請求日志結合,可以獲得應用的完整影響范圍,確保測試的全面性,大大減少了發(fā)布周期中回歸測試的成本,全部基于原始應用中應有的基礎設施進行改造適配,大大的降低了相關成本。

技術研發(fā)人員:王昊
受保護的技術使用者:上海一嗨成山汽車租賃南京有限公司
技術研發(fā)日:
技術公布日:2024/12/19
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1