• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    定位回歸用例的方法和系統技術方案

    技術編號:8562938 閱讀:205 留言:0更新日期:2013-04-11 04:35
    本發明專利技術提供了定位回歸用例的方法和系統。其中,該方法包括:A,在每個用例運行結束后,生成包含以下內容的映射關系:該用例的標識、該用例相關的源碼文件、以及該源碼文件中被用例覆蓋的語句行的標識;B,當源碼文件中語句行的信息發生修改時,以該語句行的標識為關鍵字查找包含該關鍵字的映射關系,如果查找到包含該關鍵字的映射關系,則將該查找到的映射關系中的用例標識對應的用例確定為需要回歸的用例,回歸該確定的用例,這實現了快速、準確定位出需要回歸的用例,提高回歸效率。

    【技術實現步驟摘要】

    本專利技術涉及計算機技術,特別涉及定位回歸用例的方法和系統。
    技術介紹
    為便于理解本申請,將本申請涉及到的術語進行描述源碼信息是指被測的源碼文件的標識(具體可為源碼文件名)、源碼文件中的語 句行信息和源碼流程圖信息;語句覆蓋信息是指在用例運行結束后,記錄該用例相關的源碼文件的標識、該用 例在該相關的源碼文件所覆蓋的語句行信息、覆蓋的語句的執行次數,以及每個基本塊執 行次數等信息;覆蓋率是指用例運行結束后,(覆蓋的語句行數/源碼中有效的行數)*100%。有效行源碼文件中不包含{, }的行(即空行是無效行)稱為有效行, 源碼文件中包含的頭文件,宏定義都不算有效行。目前,現有的統計覆蓋率工具算法是在用例運行完成后,記錄其覆蓋源碼文件的 覆蓋率,具體可通過圖1所示的流程實現,以給出源碼文件中的哪些語句被覆蓋,哪些語句 未被覆蓋,便于工作人員重新設計用例。但是,當源碼文件中的語句行被修改時,現有的統計覆蓋率工具算法通常是將現 有的用例全部回歸一次。如果修改比較頻繁,則需要頻繁回歸所有用例,這增加了回歸成 本,且降低需要回歸的用例的回歸效率。
    技術實現思路
    本專利技術提供了定位回歸用例的方法和系統,以便快速、準確定位出需要回歸的用 例,提高回歸效率。本專利技術提供的技術方案包括一種定位回歸用例的方法,包括A,在每個用例運行結束后,生成包含以下內容的映射關系該用例的標識、該用例 相關的源碼文件、以及該源碼文件中被用例覆蓋的語句行的標識;B,當源碼文件中語句行的信息發生修改時,以該語句行的標識為關鍵字查找包含 該關鍵字的映射關系,如果查找到包含該關鍵字的映射關系,則將該查找到的映射關系中 的用例標識對應的用例確定為需要回歸的用例,回歸該確定的用例。一種定位回歸用例的系統,包括映射關系建立裝置,用于在每個用例運行結束后,生成包含以下內容的映射關系 該用例的標識、該用例相關的源碼文件、以及該源碼文件中被用例覆蓋的語句行的標識;回歸用例確定裝置,其包括查找單元和確定單元,其中,所述查找單元,用于當源碼文件中語句行的信息發生修改時,以該語句行的標識 為關鍵字查找包含該關鍵字的映射關系;所述確定單元,用于在所述查找單元查找到包含該關鍵字的映射關系時,將該查 找到的映射關系中的用例標識對應的用例確定為需要回歸的用例,回歸該確定的用例。由以上技術方案可以看出,本專利技術中,在源碼文件中語句行的信息發生修改時,本 專利技術以該語句行的標識為關鍵字查找包含該關鍵字的映射關系,僅將查找到的映射關系中 的用例標識對應的用例確定為需要回歸的用例,這相比于現有技術,能夠快速、準確定位出 需要回歸的用例;并且,本專利技術僅將查找到的映射關系中的用例標識對應的用例進行回歸,相比于 現有技術將源碼文件相關的所有用例回歸,這大大減少了用例回歸數量,提高回歸效率。附圖說明圖1為現有統計覆蓋率工具算法不意圖2為本專利技術實施例提供的基本流程圖3和圖4為本專利技術提供的方法的應用示意圖5為本專利技術提供的詳細流程圖6為本專利技術提供的定位回歸用例的系統結構圖。具體實施方式為了使本專利技術的目的、技術方案和優點更加清楚,下面結合附圖和具體實施例對 本專利技術進行詳細描述。本專利技術提供的方法包括圖2所示的流程參見圖2,圖2為本專利技術實施例提供的流程圖。如圖2所示,該流程可包括以下步 驟步驟201,在每個用例運行結束后,生成包含以下內容的映射關系該用例的標 識、該用例相關的源碼文件、以及該源碼文件中被用例覆蓋的語句行的標識。本步驟201中,一個用例可以同時與多個源碼文件相關。步驟202,當源碼文件中語句行的信息發生修改時,以該語句行的標識為關鍵字查 找包含該關鍵字的映射關系,如果查找到包含該關鍵字的映射關系,則將該查找到的映射 關系中的用例標識對應的用例確定為需要回歸的用例,回歸該確定的用例。為使圖2所示的流程更加清楚,下面舉一個具體實施例進行描述基于步驟201,則假如得到用例I至用例5均與同一個源碼文件(記為源碼文件 I)相關,具體如圖3所示。其中,針對每一用例得到以下映射關系為用例1,源碼文件1、 用例I覆蓋源碼文件I的第10至15行之間的映射關系,用例2、源碼文件1、用例2覆蓋源 碼文件I的第20至25行之間的映射關系,用例3、源碼文件1、用例3覆蓋源碼文件I的第 30至35行之間的映射關系,用例4、源碼文件1、用例4覆蓋源碼文件I的第40至45行之 間的映射關系,以及用例5、源碼文件1、用例5覆蓋源碼文件I的第50至55行之間的映射 關系。則,當根據實際需求需要修改源碼文件I的第20行至25行中的代碼信息(簡稱 信息),則基于步驟202的描述,可以以源碼文件I中第20行至25行為關鍵字查找包含該 關鍵字的映射關系,如此,即可得到只有用例2對應的映射關系中包含該關鍵字,如此,將該查找到的映射關系中的用例標識對應的用例(即用例2)確定為需要回歸的用例,而其他 用例比如用例1、用例3、用例4和用例5則不需要回歸,具體可參見圖4所示。在圖4中, 由于用例2需要回歸,而其他用例不需要回歸,為便于區分,用比較粗的實線表示用例2,其 他用例則用相對比較細的實線來表示。通過圖4可以看出,在源碼文件I的第20行至25行中的信息發生修改時,本專利技術 只需要回歸覆蓋了該第20行至25行中的用例2,而非將源碼文件I相關的所有用例回歸, 這大大減少了用例回歸數量,提高回歸效率。需要說明的是,本專利技術中,如果在未查找到包含該語句行標識即關鍵字的映射關 系,則確定不存在需要回歸的用例,并進一步定位出該語句行標識,以及該語句行標識所處 的源碼文件,這可保存在設置的無用例源碼文件中,由find_modify_line_caseid. sh腳本 實現;這樣做,目的是使用戶比如測試人員根據定位出的語句行標識和源碼文件有針對性 地設計用例,降低測試成本,提高測試效率。進一步地,還可以提供針對該語句行標識、以及該語句行信息所處的源碼文件增 加新用例的建議?;谏厦婷枋觯旅嫱ㄟ^圖5所示的流程對本專利技術進行詳細描述參見圖5,圖5為本專利技術提供的詳細流程圖。如圖5所示,該流程可包括以下步驟步驟501,在每個用例運行結束后,記錄該用例的標識。本步驟501中的記錄可由被測程序運行后執行或者用例自動化運行后執行。其 中,可將該用例的標識記錄至設置的用例標識信息文件中。步驟502,生成該用例相關的源碼文件。本步驟502實質是從通過添加編譯選項、使用覆蓋率工具產生的源碼文件中找到 該用例相關的源碼文件。該源碼文件包含源碼文件的標識(比如源碼文件名)、語句行信息 和內部流程信息。其中,源碼文件的標識以用例的標識區分。在具體實現時,該步驟502可 由腳本 caseid_line_info. sh 實現。步驟503,針對該用例相關的每一源碼文件,生成包含該用例在該源碼文件覆蓋的 語句行標識的語句覆蓋信息文件。本步驟503針對用例相關的不同源碼文件,生成不同的語句覆蓋信息文件,每一 個語句覆蓋信息文件的標識比如文件名以用例標識來區分。本步驟503由程序rename_ gcda. cpp程序來完成。步驟504,匯總步驟503生成的各個語句覆蓋信息文件包含的內容,生成所述用例 相關的覆蓋率信息文件,所述用例相關的覆蓋率信息文件包含該用例各個相關的源碼文件 以及在各個相本文檔來自技高網...

    【技術保護點】
    一種定位回歸用例的方法,其特征在于,該方法包括:A,在每個用例運行結束后,生成包含以下內容的映射關系:該用例的標識、該用例相關的源碼文件、以及該源碼文件中被用例覆蓋的語句行的標識;B,當源碼文件中語句行的信息發生修改時,以該語句行的標識為關鍵字查找包含該關鍵字的映射關系,如果查找到包含該關鍵字的映射關系,則將該查找到的映射關系中的用例標識對應的用例確定為需要回歸的用例,回歸該確定的用例。

    【技術特征摘要】
    1.一種定位回歸用例的方法,其特征在于,該方法包括 A,在每個用例運行結束后,生成包含以下內容的映射關系該用例的標識、該用例相關的源碼文件、以及該源碼文件中被用例覆蓋的語句行的標識; B,當源碼文件中語句行的信息發生修改時,以該語句行的標識為關鍵字查找包含該關鍵字的映射關系,如果查找到包含該關鍵字的映射關系,則將該查找到的映射關系中的用例標識對應的用例確定為需要回歸的用例,回歸該確定的用例。2.根據權利要求1所述的方法,其特征在于,該方法進一步包括 當源碼文件的標識發生修改時,針對該源碼文件中的每一語句行,以該語句行的標識為關鍵字查找包含該關鍵字的映射關系,如果查找到包含該關鍵字的映射關系,則將該查找到的映射關系中的用例標識對應的用例確定為需要回歸的用例,回歸該確定的用例。3.根據權利要求1或2所述的方法,其特征在于,如果未查找到包含關鍵字的映射關系,貝1J進一步包括 定位出作為該關鍵字的語句行標識,以及該語句行標識所處的源碼文件,以使用戶根據定位出的語句行標識和源碼文件有針對性地設計用例。4.根據權利要求1所述的方法,其特征在于,步驟A中生成包括 Al,在每個用例運行結束后,記錄該用例的標識; A2,生成該用例相關的源碼文件; A3,針對該用例相關的每一源碼文件,生成包含該用例在該源碼文件覆蓋的語句行標識的語句覆蓋信息文件; A4,匯總步驟A3生成的各個語句覆蓋信息文件包含的內容,得到所述用例相關的覆蓋率信息文件,所述用例相關的覆蓋率信息文件包含該用例各個相關的源碼文件以及在各個相關的源碼文件覆蓋的語句行的標識; 根據所述用例的標識以及所述用例相關的覆蓋率信息文件包含的內容,生成包含以下內容的映射關系該用例的標識、該用例相關的源碼文件、以及該源碼文件中被用例覆蓋的語句行的標識。5.一種定位回歸用例的系統,其特征在于,該系統包括 映射關系建立裝置,用于在...

    【專利技術屬性】
    技術研發人員:陳明師王誼麟徐勇
    申請(專利權)人:騰訊科技深圳有限公司
    類型:發明
    國別省市:

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

    1
    主站蜘蛛池模板: 国产V亚洲V天堂无码久久久| 色视频综合无码一区二区三区| 久久久久无码国产精品一区| 亚洲AV中文无码字幕色三| 亚洲AV无码乱码国产麻豆| 无码人妻精品一区二区三区久久久 | 一级片无码中文字幕乱伦| 国精品无码A区一区二区| 高清无码v视频日本www| 亚洲午夜无码久久久久| 国产午夜av无码无片久久96| 人妻AV中出无码内射| 日韩精品无码人妻免费视频| 日韩精品无码一区二区三区| 亚洲国产精品无码久久九九| 亚洲国产精品无码久久| 少妇人妻无码精品视频| 国产成人无码一区二区在线观看 | 日韩aⅴ人妻无码一区二区| 日韩精品无码一区二区三区| 永久免费av无码网站yy| 爽到高潮无码视频在线观看| 亚洲精品无码久久久久APP| 久久精品aⅴ无码中文字字幕重口| 黄A无码片内射无码视频 | 一本一道中文字幕无码东京热 | 日日摸日日碰人妻无码| 亚洲AV永久无码精品网站在线观看| 亚洲av成人无码久久精品| 中文字幕精品无码一区二区三区| 一本之道高清无码视频| 亚洲无码黄色网址| 狠狠躁狠狠躁东京热无码专区| 人妻无码久久精品人妻| 精品一区二区三区无码免费直播| 免费无码成人AV片在线在线播放| 中字无码av电影在线观看网站| 精品无码人妻夜人多侵犯18| 久久久久久精品无码人妻| 亚洲爆乳AAA无码专区| 亚洲av无码一区二区三区四区|