System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 蜜臀亚洲AV无码精品国产午夜.,无码夫の前で人妻を侵犯,国产在线无码不卡影视影院
  • 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    一種單元測試文件的生成方法及裝置制造方法及圖紙

    技術編號:44477710 閱讀:3 留言:0更新日期:2025-03-04 17:46
    本申請提供一種單元測試文件的生成方法及裝置,應用于計算機技術領域,包括:從獲取的被測文件中提取程序信息,從程序信息中獲取打樁函數信息,該打樁函數信息中包含需要打樁的各個函數;應用預設的樁函數值策略和樁函數模板,生成與打樁函數信息對應的樁函數文件,該樁函數文件中包含打樁函數信息中需要打樁的每個函數的樁函數;將該樁函數文件引入被測文件中,生成與被測文件對應的單元測試文件。本申請無需手動編寫樁函數,自動生成與打樁函數信息對應的樁函數信息,將樁函數信息引入被測文件后,即可得到單元測試文件,由此,生成單元測試文件時無需等待工作人員手動編寫樁函數,縮短樁函數引入文件所需的時間,提高生成單元測試文件的效率。

    【技術實現步驟摘要】

    本專利技術涉及計算機,特別涉及一種單元測試文件的生成方法及裝置


    技術介紹

    1、在日常的java程序開發中,單元測試是確保代碼質量和功能正確性的重要手段,使用單元測試文件實現對應的單元測試。單元測試的目的在于發現各模塊內部可能存在的各種錯誤,這主要是基于白盒測試的原理,通過測試來發現在編碼過程中引入的錯誤。在進行單元測試時,被測單元可能會調用其他子單元或外部依賴,這些被調用的單元稱為樁單元。樁單元是用來替代被測單元中的子單元(被被測單元所調用)的,以隔離測試任務,確保測試的獨立性和準確性。

    2、在傳統的單元測試實踐中,開發人員往往需要手動編寫樁函數來替代那些尚未實現或不穩定的組件,以及那些需要隔離的外部依賴。手寫樁函數的過程繁瑣且容易出錯,隨著軟件項目的復雜度和規模的不斷增加,手動編寫樁函數的效率變得越來越低,導致用于單元測試的單元測試文件的生成效率越來越低。


    技術實現思路

    1、有鑒于此,本申請實施例提供一種單元測試文件的生成方法及裝置,應用本申請提供的方案可以自動化的生成樁函數,自動的將樁函數插入被測文件中,無需人工對被測文件編寫樁函數,減少向被測文件中插入樁函數所需的時間,提高生成單元測試文件的效率。

    2、為實現上述目的,本申請實施例提供如下技術方案:

    3、一種單元測試文件的生成方法,包括:

    4、獲取被測文件,并提取所述被測文件中的程序信息;

    5、從所述程序信息中獲取打樁函數信息,所述打樁函數信息中包含需要打樁的各個函數;

    6、應用預設的樁函數值策略以及預先定義的樁函數模板,生成與所述打樁函數信息對應的樁函數文件,所述樁函數文件中包含所述打樁函數信息中需要打樁的每個函數的樁函數;

    7、將所述樁函數文件引入所述被測文件中,生成與所述被測文件對應的單元測試文件。

    8、上述的方法,可選的,所述提取所述被測文件中的程序信息,包括:

    9、利用預設的語法分析工具將所述被測文件構建為語法樹;

    10、對所述語法樹進行靜態程序分析,提取所述語法樹中的每個函數的函數信息;

    11、基于所述語法樹中的每個函數的函數信息,對所述語法樹中的所有函數進行調用關系分析,確定需要打樁的各個函數,并生成包含需要打樁的各個函數的打樁函數信息;

    12、將所述打樁函數信息和所述語法樹中的每個函數的函數信息確定為程序信息。

    13、上述的方法,可選的,應用預設的樁函數值策略以及預先定義的樁函數模板,生成與所述打樁函數信息對應的樁函數文件,包括:

    14、對于所述打樁函數信息中的每個需要打樁的函數,將該需要打樁的函數確定為打樁函數;

    15、獲取所述打樁函數的函數信息;

    16、基于預設的樁函數值策略和所述打樁函數的函數信息,確定所述打樁函數的樁函數值;

    17、使用所述樁函數值和預先定義的樁函數模板,構建所述打樁函數的樁函數;

    18、基于所有打樁函數的樁函數,生成樁函數文件。

    19、上述的方法,可選的,所述基于預設的樁函數值策略和所述打樁函數的函數信息,確定所述打樁函數的樁函數值,包括:

    20、基于所述打樁函數的函數信息,確定所述打樁函數是否滿足所述樁函數值策略中的應用默認值策略;

    21、當所述打樁函數滿足所述樁函數值策略中的應用默認值策略時,將預設的默認值作為所述打樁函數的樁函數值;

    22、當所述打樁函數不滿足所述樁函數值策略中的應用默認值策略時,將引入的樁值確定為所述打樁函數的樁函數值。

    23、上述的方法,可選的,所述將所述樁函數文件引入所述被測文件中,包括:

    24、將每個需要打樁的函數在所述被測文件中的調用點位置確定為目標位置;

    25、對于所述被測文件中的每個目標位置,在所述樁函數文件中確定所述目標位置的目標樁函數,并將所述目標位置的函數替換為所述目標樁函數。

    26、一種單元測試文件的生成裝置,包括:

    27、程序分析單元,用于獲取被測文件,并提取所述被測文件中的程序信息;

    28、樁函數文件生成單元,用于從所述程序信息中獲取打樁函數信息,所述打樁函數信息中包含需要打樁的各個函數;應用預設的樁函數值策略以及預先定義的樁函數模板,生成與所述打樁函數信息對應的樁函數文件,所述樁函數文件中包含所述打樁函數信息中需要打樁的每個函數的樁函數;

    29、樁函數引入替換單元,用于將所述樁函數文件引入所述被測文件中,生成與所述被測文件對應的單元測試文件。

    30、上述的裝置,可選的,所述程序分析單元,包括:

    31、靜態分析器、符號表存儲器以及函數調用關系分析器;

    32、所述靜態分析器,用于利用預設的語法分析工具將所述被測文件構建為語法樹;對所述語法樹進行靜態程序分析,提取所述語法樹中的每個函數的函數信息;

    33、所述函數調用分析器,用于基于所述語法樹中的每個函數的函數信息,對所述語法樹中的所有函數進行調用關系分析,確定需要打樁的各個函數,并生成包含需要打樁的各個函數的打樁函數信息;

    34、所述符號表存儲器,用于將所述打樁函數信息和所述語法樹中的每個函數的函數信息確定為程序信息。

    35、上述的裝置,可選的,所述樁函數文件生成單元,包括:

    36、樁文件構造器和第一符號表讀取器;

    37、所述第一符號表讀取器,用于從所述程序分析單元中讀取打樁函數信息,對于所述打樁函數信息中的每個需要打樁的函數,將該需要打樁的函數確定為打樁函數;獲取所述打樁函數的函數信息;

    38、所述樁文件構造器,用于對于每個打樁函數,基于預設的樁函數值策略和所述打樁函數的函數信息,確定所述打樁函數的樁函數值;使用所述樁函數值和預先定義的樁函數模板,構建所述打樁函數的樁函數;基于所有打樁函數的樁函數,生成樁函數文件。

    39、上述的裝置,可選的,所述樁文件構造器執行對于每個所述打樁函數,基于預設的樁函數值策略和所述打樁函數的函數信息,確定所述打樁函數的樁函數值的過程,包括:

    40、基于所述打樁函數的函數信息,確定所述打樁函數是否滿足所述樁函數值策略中的應用默認值策略;

    41、當所述打樁函數滿足所述樁函數值策略中的應用默認值策略時,將預設的默認值作為所述打樁函數的樁函數值;

    42、當所述打樁函數不滿足所述樁函數值策略中的應用默認值策略時,將引入的樁值確定為所述打樁函數的樁函數值。

    43、上述的裝置,可選的,所述樁函數引入替換單元,包括:

    44、第二符號表讀取器和樁函數插裝器;

    45、所述第二符號表讀取器,用于從所述程序分析單元中讀取每個需要打樁的函數的位置信息;

    46、所述樁函數插裝器,用于基于每個需要打樁的函數的位置信息,確定每個需要打樁的函數在所述被測文件的調用點位置,并將每個需本文檔來自技高網...

    【技術保護點】

    1.一種單元測試文件的生成方法,其特征在于,包括:

    2.根據權利要求1所述的方法,其特征在于,所述提取所述被測文件中的程序信息,包括:

    3.根據權利要求1所述的方法,其特征在于,應用預設的樁函數值策略以及預先定義的樁函數模板,生成與所述打樁函數信息對應的樁函數文件,包括:

    4.根據權利要求3所述的方法,其特征在于,所述基于預設的樁函數值策略和所述打樁函數的函數信息,確定所述打樁函數的樁函數值,包括:

    5.根據權利要求1所述的方法,其特在于,所述將所述樁函數文件引入所述被測文件中,包括:

    6.一種單元測試文件的生成裝置,其特征在于,包括:

    7.根據權利要求6所述的裝置,其特征在于,所述程序分析單元,包括:

    8.根據權利要求6所述的裝置,其特征在于,所述樁函數文件生成單元,包括:

    9.根據權利要求8所述的裝置,其特征在于,所述樁文件構造器執行對于每個所述打樁函數,基于預設的樁函數值策略和所述打樁函數的函數信息,確定所述打樁函數的樁函數值的過程,包括:

    10.根據權利要求6所述的裝置,其特征在于,所述樁函數引入替換單元,包括:

    ...

    【技術特征摘要】

    1.一種單元測試文件的生成方法,其特征在于,包括:

    2.根據權利要求1所述的方法,其特征在于,所述提取所述被測文件中的程序信息,包括:

    3.根據權利要求1所述的方法,其特征在于,應用預設的樁函數值策略以及預先定義的樁函數模板,生成與所述打樁函數信息對應的樁函數文件,包括:

    4.根據權利要求3所述的方法,其特征在于,所述基于預設的樁函數值策略和所述打樁函數的函數信息,確定所述打樁函數的樁函數值,包括:

    5.根據權利要求1所述的方法,其特在于,所述將所述樁函數文件引入所述被...

    【專利技術屬性】
    技術研發人員:蘇開印白欣逢李紅章趙奇
    申請(專利權)人:中國農業銀行股份有限公司
    類型:發明
    國別省市:

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 日韩精品人妻系列无码专区| 曰韩无码无遮挡A级毛片| 亚洲精品无码久久千人斩| 亚洲情XO亚洲色XO无码| 亚洲性无码AV中文字幕| 中文字幕无码一区二区三区本日 | 免费无码VA一区二区三区| 无码人妻AV一二区二区三区| 亚洲AV无码专区在线电影成人 | 久久久久亚洲AV无码专区网站| 人妻无码αv中文字幕久久| 无码人妻一区二区三区免费视频| 无码中文人妻视频2019| 中文字幕人妻三级中文无码视频 | 亚洲精品av无码喷奶水糖心| 国产成年无码久久久免费| 无码毛片内射白浆视频| 无码国产午夜福利片在线观看| 国产精品无码素人福利| 加勒比无码一区二区三区| 色欲狠狠躁天天躁无码中文字幕| yy111111少妇无码影院| 69成人免费视频无码专区| 50岁人妻丰满熟妇αv无码区| 亚洲成AV人片在线观看无码| 狠狠躁狠狠躁东京热无码专区| 成人毛片无码一区二区| 精品无码综合一区二区三区| 成人无码区免费A片视频WWW| 日韩精品无码一区二区中文字幕| 国产AV一区二区三区无码野战| 精品无码一级毛片免费视频观看 | 亚洲AV人无码综合在线观看| 狠狠精品久久久无码中文字幕| 无码人妻精品一区二区蜜桃百度| 亚州AV综合色区无码一区| 久久精品无码一区二区三区免费| 精品人妻系列无码人妻漫画| 少妇人妻偷人精品无码AV| 国产精品无码aⅴ嫩草| yy111111少妇影院里无码|