System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術代碼測試,特別涉及一種代碼變更比對結果優化方法、系統、設備及介質。
技術介紹
1、在白盒測試活動中,需要根據代碼變更的情況與否決定是否開展相應的回歸測試活動,如靜態測試、單元測試、集成測試,同時在取得相應安全認證的要求時也需要有代碼變更范圍表的情況作為測試依據。在既有的測試活動中,這項工作往往需要占用大量的人力及工時去做分析及統計,通過自動化比對腳本代替人工可以提升測試的效率及統計的準確性。
2、目前,大家采用的方案為測試人員使用比對工具如visual?studio自帶比對工具、beyondcompare、winmerge等工具進行代碼比對,通過比對人員手動摘取變更代碼及分析的原因進行整理、統計代碼變更情況;或通過腳本比對某兩個版本間代碼的變更,將變更的部分輸出至文檔。
3、代碼量較大時,通過比對人員手動摘取變更代碼及分析的原因整理、統計代碼變更情況,很容易造成人工誤差導致結果失真,且如果代碼變更量較大時,很是會浪費人員時間成本;現有的腳本比對代碼變更生成的文檔是txt格式或者html等之類的讀取查看不太分明的文檔,查看代碼變更內容時并不清楚明了。因此,使用腳本生成代碼變更表優勢就顯得更加明顯。
4、因此,如何提供一種代碼變更比對結果優化方法、系統、設備及介質,是目前亟待解決的問題。
技術實現思路
1、本專利技術實施例提供了一種代碼變更比對結果優化方法、系統、設備及介質,以解決現有技術中存在的上述技術問題。
2、為了對披露的
3、根據本專利技術實施例的第一方面,提供了一種代碼變更比對結果優化方法。
4、在一個實施例中,所述代碼變更比對結果優化方法,包括:
5、調用命令提示符,并基于命令提示符的命令,獲取不同變更集的代碼,存儲至文本文檔;
6、讀取所述文本文檔,并將變更信息寫入電子表格文檔。
7、在一個實施例中,所述調用命令提示符,并基于命令提示符的命令,獲取不同變更集的代碼,存儲至文本文檔包括:
8、利用os.popen調用cmd命令;
9、利用tf命令tf?vc?diff獲取tfs上不同變更集代碼,并將變更內容保存至文本文檔中。
10、在一個實施例中,所述讀取所述文本文檔,并將變更內容寫入電子表格文檔包括:
11、調用open函數打開并讀取文本文檔;
12、按行遍歷讀取所述文本文檔的變更內容并返回至列表中;基于預先配置的關鍵字判斷條件,輸出判斷返回值,并將所述判斷返回值與變更信息填寫至電子表格文檔中,保存所述電子表格文檔至本目錄下。
13、在一個實施例中,所述基于預先配置的關鍵字判斷條件,輸出判斷返回值,并將所述判斷返回值與變更信息填寫至電子表格文檔中包括:
14、判斷讀取到的變更內容是否包含關鍵字,若包含關鍵字,則輸出判斷返回值為1,若不包含關鍵字,則輸出判斷返回值為0;其中,所述關鍵字包括if、while、switch及for;
15、提取所述判斷返回值為1的變更內容中的變更信息,依次填寫至電子表格文檔中;其中,所述變更信息包括文件名、函數名、變更前、變更后、更改內容、是否影響現有用例及備注。
16、根據本專利技術實施例的第二方面,提供了一種代碼變更比對結果優化系統。
17、在一個實施例中,所述代碼變更比對結果優化系統,包括:
18、變更集采集模塊,用于調用命令提示符,并基于命令提示符的命令,獲取不同變更集的代碼,存儲至文本文檔;
19、變更比對模塊,用于讀取所述文本文檔,并將變更信息寫入電子表格文檔。
20、在一個實施例中,所述變更集采集模塊包括:命令調用模塊與代碼獲取模塊,其中,
21、所述命令調用模塊,用于利用os.popen調用cmd命令;
22、所述代碼獲取模塊,用于利用tf命令tf?vc?diff獲取tfs上不同變更集代碼,并將變更內容保存至文本文檔中。
23、在一個實施例中,所述變更比對模塊包括:文檔讀取模塊與結果錄入模塊,其中,
24、所述文檔讀取模塊,用于調用open函數打開并讀取文本文檔;
25、所述結果錄入模塊,用于按行遍歷讀取所述文本文檔的變更內容并返回至列表中;基于預先配置的關鍵字判斷條件,輸出判斷返回值,并將所述判斷返回值與變更信息填寫至電子表格文檔中,保存所述電子表格文檔至本目錄下。
26、在一個實施例中,所述結果錄入模塊包括:關鍵字判斷模塊與變更信息識別模塊,其中,
27、所述關鍵字判斷模塊,用于判斷讀取到的變更內容是否包含關鍵字,若包含關鍵字,則輸出判斷返回值為1,若不包含關鍵字,則輸出判斷返回值為0;其中,所述關鍵字包括if、while、switch及for;
28、所述變更信息識別模塊,用于提取所述判斷返回值為1的變更內容中的變更信息,依次填寫至電子表格文檔中;其中,所述變更信息包括文件名、函數名、變更前、變更后、更改內容、是否影響現有用例及備注。
29、根據本專利技術實施例的第三方面,提供了一種計算機設備。
30、在一些實施例中,所述計算機設備包括存儲器和處理器,所述存儲器存儲有計算機程序,所述處理器執行所述計算機程序時實現上述方法的步驟。
31、根據本專利技術實施例的第四方面,提供了一種計算機可讀存儲介質。
32、在一個實施例中,所述計算機可讀存儲介質上存儲有計算機程序,所述計算機程序被處理器執行時實現上述方法的步驟。
33、本專利技術實施例提供的技術方案可以包括以下有益效果:
34、本專利技術運用python腳本自動化完成代碼比對的過程,快速準確的輸出比對結果,包含不同變更內容對既有用例的影響,從而快速確定回歸測試范圍;解決由代碼變更引起的回歸測試中測試范圍確定的需求,通過tfs進行版本控制及管理的代碼,在每一次將變更的版本與上一變更集的代碼內容進行比對后,將變更部分輸出至excel,此外,腳本會根據代碼中的變更進行分析,確認是否影響原有測試用例,從而幫助測試人員節省代碼變更后比對變更內容從而確定測試范圍時間,增加效率,加快工作進度,減少了人為編寫文檔可能會造成的誤差,可以增加文檔的準確性。
35、應當理解的是,以上的一般描述和后文的細節描述僅是示例性和解釋性的,并不能限制本專利技術。
本文檔來自技高網...【技術保護點】
1.一種代碼變更比對結果優化方法,其特征在于,包括:
2.根據權利要求1所述的代碼變更比對結果優化方法,其特征在于,所述基于預先配置的關鍵字判斷條件,輸出判斷返回值,并將所述判斷返回值與變更信息填寫至電子表格文檔中包括:
3.一種代碼變更比對結果優化系統,其特征在于,包括:
4.根據權利要求3所述的代碼變更比對結果優化系統,其特征在于,所述變更集采集模塊包括:命令調用模塊與代碼獲取模塊,其中,
5.根據權利要求4所述的代碼變更比對結果優化系統,其特征在于,所述變更比對模塊包括:文檔讀取模塊與結果錄入模塊,其中,
6.根據權利要求5述的代碼變更比對結果優化系統,其特征在于,所述結果錄入模塊包括:關鍵字判斷模塊與變更信息識別模塊,其中,
7.一種計算機設備,包括存儲器和處理器,所述存儲器存儲有計算機程序,其特征在于,所述處理器執行所述計算機程序時實現權利要求1至2中任一項所述的方法的步驟。
8.一種計算機可讀存儲介質,其上存儲有計算機程序,其特征在于,所述計算機程序被處理器執行時實現權利要求1至2中任
...【技術特征摘要】
1.一種代碼變更比對結果優化方法,其特征在于,包括:
2.根據權利要求1所述的代碼變更比對結果優化方法,其特征在于,所述基于預先配置的關鍵字判斷條件,輸出判斷返回值,并將所述判斷返回值與變更信息填寫至電子表格文檔中包括:
3.一種代碼變更比對結果優化系統,其特征在于,包括:
4.根據權利要求3所述的代碼變更比對結果優化系統,其特征在于,所述變更集采集模塊包括:命令調用模塊與代碼獲取模塊,其中,
5.根據權利要求4所述的代碼變更比對結果優化系統,其特征在于,...
【專利技術屬性】
技術研發人員:張帥,吳正中,范敬瑤,張輝,王曉東,任朝暉,關德旭,
申請(專利權)人:北京城建智控科技股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。