• <u id="saeeq"><wbr id="saeeq"></wbr></u>
  • <s id="saeeq"><div id="saeeq"></div></s>
  • <u id="saeeq"></u>
  • <u id="saeeq"><noscript id="saeeq"></noscript></u>
  • <s id="saeeq"></s>
  • 軟件所在移動應用質量保障方面取得進展

    文章來源:  |  發布時間:2023-02-08  |  【打印】 【關閉

      

       近日,軟件所互聯網軟件技術實驗室在移動應用程序質量保障方面喜提ICSE·2023國際會議三篇論文。研究成果聚焦移動應用程序質量保障方向,涉及移動應用程序的自動化測試輸入生成、活動轉移圖自動補全、缺陷自動復現等方面,可賦能質量保障活動,多角度提升移動應用程序的質量。 

      論文“Fill in the Blank: Context-aware Automated Text Input Generation for Mobile GUI Testing”關注移動應用程序自動化測試過程中的輸入生成問題。近年來自動化圖形用戶界面(GUI)測試被廣泛用于幫助開發團隊確保移動應用程序的質量。然而許多GUI需要適當的文本輸入才能進入下一頁,文本輸入的質量成為影響測試覆蓋率的主要障礙。由于有效文本輸入(例如航班的出發地、電影名稱、用戶血壓信息等)具有多樣性和語義要求的特點,實現文本輸入生成的自動化是一項具有挑戰性的任務,其難度主要體現在兩個方面,一是輸入時需要生成不同類型的特定值,例如地圖應用程序的街道地址;二是在同一GUI頁面內需要體現文本之間的關聯性,例如航班搜索中出發和到達地需要是不同位置。如果文本輸入不恰當,自動化測試工具將無法進入下一個UI頁面,從而導致測試的充分性低下。 

      針對以上的挑戰,團隊提出了一種上下文感知的自動文本輸入生成方法QTypist,即使用預先訓練的大型語言模型(LLM)來智能地生成語義輸入文本,以增強移動GUI測試。其設計邏輯是,先給定一個帶有文本輸入的GUI頁面及其相應的視圖層次結構文件,通過提取文本輸入的上下文信息,來設計語言模式以生成提示作為LLM的輸入。同時,為了提高LLM在移動GUI中文本輸入的性能,團隊還開發了一種基于提示的數據構建和調優方法,以自動提取用于模型調優的提示和答案。 

      1展示了該方法的基本框架。團隊對來自Google Play106個應用程序進行了評估,結果顯示,該方法生成文本的通過率為87%,比最佳基線高93%。團隊還將文本生成方法與自動化GUI測試工具集成,與原始工具相比,集成后的工具可以多覆蓋42%的應用程序活動和52%的頁面,同時多檢測82%bug,從而提升了自動化測試工具的測試覆蓋率和缺陷檢測效率。  

      1. QTypist基本框架

      論文“Ex pede Herculem: Augmenting Activity Transition Graph for Apps via Graph Convolution Network”關注移動應用程序的活動轉移圖自動補全問題。由于安卓應用程序是事件驅動的,活動轉換圖(ATG)成為應用程序抽象和GUI建模的重要方式。盡管現有的工作提供了靜態和動態分析來構建應用程序的ATG,但由于這些技術的低覆蓋率,所獲得的ATG的完整性較差。針對以上的挑戰,受到應用程序的活動名稱存在語義信息這一啟發,團隊提出ArchiDroid來自動預測應用程序活動之間的轉換,并增強其ATG。首先通過靜態分析提取種子ATG;然后構建活動嵌入模型,將活動名稱嵌入到語義向量中;最后構造一個圖卷積層,學習活動名稱和圖結構信息的語義并預測活動之間的轉換,從而實現自動構建應用程序的ATG 

      2展示了該方法的基本框架。團隊在真實的流行移動應用程序上進行評估,結果表明,在預測增強ATG的活動之間的轉換時,工具可以達到86%的準確率和94%的召回率。團隊進一步將增強的ATG應用于兩個下游任務,即自動化GUI測試指導和應用程序功能設計協助。結果表明,集成了我們方法的自動化GUI測試工具,提升了43%的活動覆蓋率。此外,該方法可以在真實應用程序中以85%的準確率預測缺失的功能,以幫助應用程序功能設計。

        2. ArchiDroid基本框架

      論文“Context-aware Bug Reproduction for Mobile Apps”關注移動應用程序的缺陷自動復現問題。在開放環境下,眾多測試者和用戶在平臺上貢獻大量缺陷報告,這些群智貢獻信息為軟件質量保障提供了豐富的知識源。但在修復缺陷之前,開發人員需要手工復現缺陷,這是一項極其耗時和乏味的工作,人們非常期待將這一過程自動化。目前,缺陷自動復現主要面臨以下兩方面的挑戰,致使自動復現的成功率不高或效率低下:一是報告質量參差不齊,復現步驟有描述不精確或不完整的問題;二是GUI組件信息源單一且存在缺失或模糊的問題。針對上述挑戰,團隊提出了一種上下文感知的缺陷復現方法ScopeDroid,其能依據缺陷報告中的文本復現步驟,自動復現崩潰。該方法首先通過自動化探索工具構建目標應用的狀態轉換圖并提取各GUI組件的信息,然后多模態神經匹配網絡將會依據GUI組件的文本、圖片、上下文等信息,與復現步驟間進行匹配,最后路徑規劃模塊將會依據狀態轉移圖和匹配結果,以全局視角規劃出復現缺陷的探索路徑。

       圖3展示了該方法的基本框架。團隊對來自69個流行的移動應用程序的102個缺陷報告進行了評估,ScopeDroid成功地重現了63.7%的崩潰,比最先進的基線高出32.1%和38.3%。 

       3. ScopeDroid基本框架

      Fill in the Blank: Context-aware Automated Text Input Generation for Mobile GUI Testing”和“Ex pede Herculem: Augmenting Activity Transition Graph for Apps via Graph Convolution Network”第一作者為博士生劉哲,“Context-aware Bug Reproduction for Mobile Apps”第一作者為博士生黃芋超,通訊作者均為王俊杰研究員、王青研究員。研究獲得科技部重點研發計劃、國家自然科學基金、中國科學院青年創新促進會的支持。 

      

       

       

     

     

  • <u id="saeeq"><wbr id="saeeq"></wbr></u>
  • <s id="saeeq"><div id="saeeq"></div></s>
  • <u id="saeeq"></u>
  • <u id="saeeq"><noscript id="saeeq"></noscript></u>
  • <s id="saeeq"></s>
  • 久久久综合香蕉尹人综合网