VET: Identifying and Avoiding UI Exploration Tarpits
Despite over a decade of research, it is still challenging for mobile UI testing tools to achieve satisfactory effectiveness, especially on industrial apps with rich features and large code bases. Our experiences suggest that existing mobile UI testing tools are prone to exploration tarpits, where t...
Gespeichert in:
Veröffentlicht in: | arXiv.org 2021-07 |
---|---|
Hauptverfasser: | , , , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
container_end_page | |
---|---|
container_issue | |
container_start_page | |
container_title | arXiv.org |
container_volume | |
creator | Wang, Wenyu Yang, Wei Xu, Tianyin Xie, Tao |
description | Despite over a decade of research, it is still challenging for mobile UI testing tools to achieve satisfactory effectiveness, especially on industrial apps with rich features and large code bases. Our experiences suggest that existing mobile UI testing tools are prone to exploration tarpits, where the tools get stuck with a small fraction of app functionalities for an extensive amount of time. For example, a tool logs out an app at early stages without being able to log back in, and since then the tool gets stuck with exploring the app's pre-login functionalities (i.e., exploration tarpits) instead of its main functionalities. While tool vendors/users can manually hardcode rules for the tools to avoid specific exploration tarpits, these rules can hardly generalize, being fragile in face of diverted testing environments and fast app iterations. To identify and resolve exploration tarpits, we propose VET, a general approach including a supporting system for the given specific Android UI testing tool on the given specific app under test (AUT). VET runs the tool on the AUT for some time and records UI traces, based on which VET identifies exploration tarpits by recognizing their patterns in the UI traces. VET then pinpoints the actions (e.g., clicking logout) or the screens that lead to or exhibit exploration tarpits. In subsequent test runs, VET guides the testing tool to prevent or recover from exploration tarpits. From our evaluation with state-of-the-art Android UI testing tools on popular industrial apps, VET identifies exploration tarpits that cost up to 98.6% testing time budget. These exploration tarpits reveal not only limitations in UI exploration strategies but also defects in tool implementations. VET automatically addresses the identified exploration tarpits, enabling each evaluated tool to achieve higher code coverage and improve crash-triggering capabilities. |
doi_str_mv | 10.48550/arxiv.2102.06377 |
format | Article |
fullrecord | <record><control><sourceid>proquest_arxiv</sourceid><recordid>TN_cdi_arxiv_primary_2102_06377</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>2489448133</sourcerecordid><originalsourceid>FETCH-LOGICAL-a523-79ef8c6fa2181b877b781e144f5e557d2fe6e9a2c7a6d37cd3565f21586ccbb53</originalsourceid><addsrcrecordid>eNotj11LwzAYhYMgOOZ-gFcWvG5N3uRNUu_GqFoYeFO9LWmTSMZsa9qN7d-7D68OBx4O5yHkgdFMaET6bOIh7DNgFDIquVI3ZAacs1QLgDuyGMcNpRSkAkQ-I-KrqF6S0rpuCv4Yuu_EdDZZ7vtgz-WzTIrDsO2jmULfJZWJQ5jGe3LrzXZ0i_-ck-q1qFbv6frjrVwt16lB4KnKndet9AaYZo1WqlGaOSaER4eoLHgnXW6gVUZarlrLUaIHhlq2bdMgn5PH6-xFqR5i-DHxWJ_V6ovaiXi6EkPsf3dunOpNv4vd6VMNQudCaMY5_wPC30_I</addsrcrecordid><sourcetype>Open Access Repository</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>2489448133</pqid></control><display><type>article</type><title>VET: Identifying and Avoiding UI Exploration Tarpits</title><source>arXiv.org</source><source>Free E- Journals</source><creator>Wang, Wenyu ; Yang, Wei ; Xu, Tianyin ; Xie, Tao</creator><creatorcontrib>Wang, Wenyu ; Yang, Wei ; Xu, Tianyin ; Xie, Tao</creatorcontrib><description>Despite over a decade of research, it is still challenging for mobile UI testing tools to achieve satisfactory effectiveness, especially on industrial apps with rich features and large code bases. Our experiences suggest that existing mobile UI testing tools are prone to exploration tarpits, where the tools get stuck with a small fraction of app functionalities for an extensive amount of time. For example, a tool logs out an app at early stages without being able to log back in, and since then the tool gets stuck with exploring the app's pre-login functionalities (i.e., exploration tarpits) instead of its main functionalities. While tool vendors/users can manually hardcode rules for the tools to avoid specific exploration tarpits, these rules can hardly generalize, being fragile in face of diverted testing environments and fast app iterations. To identify and resolve exploration tarpits, we propose VET, a general approach including a supporting system for the given specific Android UI testing tool on the given specific app under test (AUT). VET runs the tool on the AUT for some time and records UI traces, based on which VET identifies exploration tarpits by recognizing their patterns in the UI traces. VET then pinpoints the actions (e.g., clicking logout) or the screens that lead to or exhibit exploration tarpits. In subsequent test runs, VET guides the testing tool to prevent or recover from exploration tarpits. From our evaluation with state-of-the-art Android UI testing tools on popular industrial apps, VET identifies exploration tarpits that cost up to 98.6% testing time budget. These exploration tarpits reveal not only limitations in UI exploration strategies but also defects in tool implementations. VET automatically addresses the identified exploration tarpits, enabling each evaluated tool to achieve higher code coverage and improve crash-triggering capabilities.</description><identifier>EISSN: 2331-8422</identifier><identifier>DOI: 10.48550/arxiv.2102.06377</identifier><language>eng</language><publisher>Ithaca: Cornell University Library, arXiv.org</publisher><subject>Algorithms ; Applications programs ; Computer Science - Software Engineering ; Customization ; Mobile computing ; Quality assurance ; Quality control ; Space exploration</subject><ispartof>arXiv.org, 2021-07</ispartof><rights>2021. This work is published under http://creativecommons.org/licenses/by/4.0/ (the “License”). Notwithstanding the ProQuest Terms and Conditions, you may use this content in accordance with the terms of the License.</rights><rights>http://creativecommons.org/licenses/by/4.0</rights><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>228,230,778,782,883,27908</link.rule.ids><backlink>$$Uhttps://doi.org/10.48550/arXiv.2102.06377$$DView paper in arXiv$$Hfree_for_read</backlink><backlink>$$Uhttps://doi.org/10.1145/3468264.3468554$$DView published paper (Access to full text may be restricted)$$Hfree_for_read</backlink></links><search><creatorcontrib>Wang, Wenyu</creatorcontrib><creatorcontrib>Yang, Wei</creatorcontrib><creatorcontrib>Xu, Tianyin</creatorcontrib><creatorcontrib>Xie, Tao</creatorcontrib><title>VET: Identifying and Avoiding UI Exploration Tarpits</title><title>arXiv.org</title><description>Despite over a decade of research, it is still challenging for mobile UI testing tools to achieve satisfactory effectiveness, especially on industrial apps with rich features and large code bases. Our experiences suggest that existing mobile UI testing tools are prone to exploration tarpits, where the tools get stuck with a small fraction of app functionalities for an extensive amount of time. For example, a tool logs out an app at early stages without being able to log back in, and since then the tool gets stuck with exploring the app's pre-login functionalities (i.e., exploration tarpits) instead of its main functionalities. While tool vendors/users can manually hardcode rules for the tools to avoid specific exploration tarpits, these rules can hardly generalize, being fragile in face of diverted testing environments and fast app iterations. To identify and resolve exploration tarpits, we propose VET, a general approach including a supporting system for the given specific Android UI testing tool on the given specific app under test (AUT). VET runs the tool on the AUT for some time and records UI traces, based on which VET identifies exploration tarpits by recognizing their patterns in the UI traces. VET then pinpoints the actions (e.g., clicking logout) or the screens that lead to or exhibit exploration tarpits. In subsequent test runs, VET guides the testing tool to prevent or recover from exploration tarpits. From our evaluation with state-of-the-art Android UI testing tools on popular industrial apps, VET identifies exploration tarpits that cost up to 98.6% testing time budget. These exploration tarpits reveal not only limitations in UI exploration strategies but also defects in tool implementations. VET automatically addresses the identified exploration tarpits, enabling each evaluated tool to achieve higher code coverage and improve crash-triggering capabilities.</description><subject>Algorithms</subject><subject>Applications programs</subject><subject>Computer Science - Software Engineering</subject><subject>Customization</subject><subject>Mobile computing</subject><subject>Quality assurance</subject><subject>Quality control</subject><subject>Space exploration</subject><issn>2331-8422</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2021</creationdate><recordtype>article</recordtype><sourceid>ABUWG</sourceid><sourceid>AFKRA</sourceid><sourceid>AZQEC</sourceid><sourceid>BENPR</sourceid><sourceid>CCPQU</sourceid><sourceid>DWQXO</sourceid><sourceid>GOX</sourceid><recordid>eNotj11LwzAYhYMgOOZ-gFcWvG5N3uRNUu_GqFoYeFO9LWmTSMZsa9qN7d-7D68OBx4O5yHkgdFMaET6bOIh7DNgFDIquVI3ZAacs1QLgDuyGMcNpRSkAkQ-I-KrqF6S0rpuCv4Yuu_EdDZZ7vtgz-WzTIrDsO2jmULfJZWJQ5jGe3LrzXZ0i_-ck-q1qFbv6frjrVwt16lB4KnKndet9AaYZo1WqlGaOSaER4eoLHgnXW6gVUZarlrLUaIHhlq2bdMgn5PH6-xFqR5i-DHxWJ_V6ovaiXi6EkPsf3dunOpNv4vd6VMNQudCaMY5_wPC30_I</recordid><startdate>20210713</startdate><enddate>20210713</enddate><creator>Wang, Wenyu</creator><creator>Yang, Wei</creator><creator>Xu, Tianyin</creator><creator>Xie, Tao</creator><general>Cornell University Library, arXiv.org</general><scope>8FE</scope><scope>8FG</scope><scope>ABJCF</scope><scope>ABUWG</scope><scope>AFKRA</scope><scope>AZQEC</scope><scope>BENPR</scope><scope>BGLVJ</scope><scope>CCPQU</scope><scope>DWQXO</scope><scope>HCIFZ</scope><scope>L6V</scope><scope>M7S</scope><scope>PIMPY</scope><scope>PQEST</scope><scope>PQQKQ</scope><scope>PQUKI</scope><scope>PRINS</scope><scope>PTHSS</scope><scope>AKY</scope><scope>GOX</scope></search><sort><creationdate>20210713</creationdate><title>VET: Identifying and Avoiding UI Exploration Tarpits</title><author>Wang, Wenyu ; Yang, Wei ; Xu, Tianyin ; Xie, Tao</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-a523-79ef8c6fa2181b877b781e144f5e557d2fe6e9a2c7a6d37cd3565f21586ccbb53</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2021</creationdate><topic>Algorithms</topic><topic>Applications programs</topic><topic>Computer Science - Software Engineering</topic><topic>Customization</topic><topic>Mobile computing</topic><topic>Quality assurance</topic><topic>Quality control</topic><topic>Space exploration</topic><toplevel>online_resources</toplevel><creatorcontrib>Wang, Wenyu</creatorcontrib><creatorcontrib>Yang, Wei</creatorcontrib><creatorcontrib>Xu, Tianyin</creatorcontrib><creatorcontrib>Xie, Tao</creatorcontrib><collection>ProQuest SciTech Collection</collection><collection>ProQuest Technology Collection</collection><collection>Materials Science & Engineering Collection</collection><collection>ProQuest Central (Alumni Edition)</collection><collection>ProQuest Central UK/Ireland</collection><collection>ProQuest Central Essentials</collection><collection>ProQuest Central</collection><collection>Technology Collection</collection><collection>ProQuest One Community College</collection><collection>ProQuest Central Korea</collection><collection>SciTech Premium Collection</collection><collection>ProQuest Engineering Collection</collection><collection>Engineering Database</collection><collection>Publicly Available Content Database</collection><collection>ProQuest One Academic Eastern Edition (DO NOT USE)</collection><collection>ProQuest One Academic</collection><collection>ProQuest One Academic UKI Edition</collection><collection>ProQuest Central China</collection><collection>Engineering Collection</collection><collection>arXiv Computer Science</collection><collection>arXiv.org</collection><jtitle>arXiv.org</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Wang, Wenyu</au><au>Yang, Wei</au><au>Xu, Tianyin</au><au>Xie, Tao</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>VET: Identifying and Avoiding UI Exploration Tarpits</atitle><jtitle>arXiv.org</jtitle><date>2021-07-13</date><risdate>2021</risdate><eissn>2331-8422</eissn><abstract>Despite over a decade of research, it is still challenging for mobile UI testing tools to achieve satisfactory effectiveness, especially on industrial apps with rich features and large code bases. Our experiences suggest that existing mobile UI testing tools are prone to exploration tarpits, where the tools get stuck with a small fraction of app functionalities for an extensive amount of time. For example, a tool logs out an app at early stages without being able to log back in, and since then the tool gets stuck with exploring the app's pre-login functionalities (i.e., exploration tarpits) instead of its main functionalities. While tool vendors/users can manually hardcode rules for the tools to avoid specific exploration tarpits, these rules can hardly generalize, being fragile in face of diverted testing environments and fast app iterations. To identify and resolve exploration tarpits, we propose VET, a general approach including a supporting system for the given specific Android UI testing tool on the given specific app under test (AUT). VET runs the tool on the AUT for some time and records UI traces, based on which VET identifies exploration tarpits by recognizing their patterns in the UI traces. VET then pinpoints the actions (e.g., clicking logout) or the screens that lead to or exhibit exploration tarpits. In subsequent test runs, VET guides the testing tool to prevent or recover from exploration tarpits. From our evaluation with state-of-the-art Android UI testing tools on popular industrial apps, VET identifies exploration tarpits that cost up to 98.6% testing time budget. These exploration tarpits reveal not only limitations in UI exploration strategies but also defects in tool implementations. VET automatically addresses the identified exploration tarpits, enabling each evaluated tool to achieve higher code coverage and improve crash-triggering capabilities.</abstract><cop>Ithaca</cop><pub>Cornell University Library, arXiv.org</pub><doi>10.48550/arxiv.2102.06377</doi><oa>free_for_read</oa></addata></record> |
fulltext | fulltext |
identifier | EISSN: 2331-8422 |
ispartof | arXiv.org, 2021-07 |
issn | 2331-8422 |
language | eng |
recordid | cdi_arxiv_primary_2102_06377 |
source | arXiv.org; Free E- Journals |
subjects | Algorithms Applications programs Computer Science - Software Engineering Customization Mobile computing Quality assurance Quality control Space exploration |
title | VET: Identifying and Avoiding UI Exploration Tarpits |
url | https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-16T19%3A05%3A58IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_arxiv&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=VET:%20Identifying%20and%20Avoiding%20UI%20Exploration%20Tarpits&rft.jtitle=arXiv.org&rft.au=Wang,%20Wenyu&rft.date=2021-07-13&rft.eissn=2331-8422&rft_id=info:doi/10.48550/arxiv.2102.06377&rft_dat=%3Cproquest_arxiv%3E2489448133%3C/proquest_arxiv%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=2489448133&rft_id=info:pmid/&rfr_iscdi=true |