{"id":{"repo_id":"uoit","oai_identifier":"oai:ontariotechu.scholaris.ca:10155/763"},"canonical_url":"https://search.dev.ndltd.org/etd/uoit/oai:ontariotechu.scholaris.ca:10155/763","repository":{"repo_id":"uoit","name":"Ontario Institute of Technology","base_url":"https://ontariotechu.scholaris.ca/server/oai/request"},"display":{"title":"Component-based modeling for Android application testing","abstract":"The rising popularity of Android and the component-based structure of its apps have motivated the need for automated model-based testing techniques on Android plat- form. Prior researches have primarily focused on the GUI-based model of Android apps. GUI-based model only includes Activity targeting graphical user interfaces. It neglects other components such as Service and Broadcast Receiver in the Android Development Framework. Although the GUI-based model testing has achieved a good testing result targeting the graphical user interface, its effectiveness has been decreasing as Android applications become more complex in both functional behaviors and component-based structure. This phenomenon challenges the feasibility of currently existing model-based testing on Android platform. To address the challenges mentioned above, we propose a component-based approach of automated model generation for model-based testing on Android platform in this thesis. First, we extend the state definition in the model. Activity, Service and Broadcast Receiver are abstracted into the component-based model as states. Newly introduced states can depict the behaviors of a given app in a larger scope for better descriptive modeling and input generation. Second, we extend transition definition, and also propose a static mapping transition builder for transition construction across different kinds of components. Then the event sequence generator &amp; cluster is proposed to generate proper test sequences for testing. The event cluster assists the input generation of the component-based model testing. Also, we present CamDroid, a tool implementing the proposed approach for An- droid apps testing. Lastly, our experiments have corroborated CamDroid&apos;s ability to build a model connecting components including Service, Activity and Broadcast Receiver. It can overcome the new challenges of Android apps in model-based testing. As a result, component-based model can achieve better performance in real model- based testing in terms of code coverage, comparing to the traditional GUI-based model testing.","abstract_html":"The rising popularity of Android and the component-based structure of its apps have motivated the need for automated model-based testing techniques on Android plat- form. Prior researches have primarily focused on the GUI-based model of Android apps. GUI-based model only includes Activity targeting graphical user interfaces. It neglects other components such as Service and Broadcast Receiver in the Android Development Framework. Although the GUI-based model testing has achieved a good testing result targeting the graphical user interface, its effectiveness has been decreasing as Android applications become more complex in both functional behaviors and component-based structure. This phenomenon challenges the feasibility of currently existing model-based testing on Android platform. To address the challenges mentioned above, we propose a component-based approach of automated model generation for model-based testing on Android platform in this thesis. First, we extend the state definition in the model. Activity, Service and Broadcast Receiver are abstracted into the component-based model as states. Newly introduced states can depict the behaviors of a given app in a larger scope for better descriptive modeling and input generation. Second, we extend transition definition, and also propose a static mapping transition builder for transition construction across different kinds of components. Then the event sequence generator &amp;amp; cluster is proposed to generate proper test sequences for testing. The event cluster assists the input generation of the component-based model testing. Also, we present CamDroid, a tool implementing the proposed approach for An- droid apps testing. Lastly, our experiments have corroborated CamDroid&amp;apos;s ability to build a model connecting components including Service, Activity and Broadcast Receiver. It can overcome the new challenges of Android apps in model-based testing. As a result, component-based model can achieve better performance in real model- based testing in terms of code coverage, comparing to the traditional GUI-based model testing.","abstract_has_math":false,"creators":["Gao, Yatian"],"institution":"University of Ontario Institute of Technology","degree_name":"Master of Science (MSc)","degree_level":null,"degree_discipline":"Computer Science","degree_department":null,"school":null,"contributors":[],"advisors":["Lin, Xiaodong"],"committee_chairs":[],"committee_members":[],"year":2017,"date_issued":"2017-04-01","date_published":"2017-04-01","updated_at":"2026-07-24T05:35:43Z","subjects":["Android application","Model-based testing","Software testing"],"languages":["en"],"rights":[],"rights_urls":[],"identifier_entries":[]},"links":{"outbound_url":"https://hdl.handle.net/10155/763","outbound_label":"Handle","outbound_source":"dc:identifier.uri"},"metadata_groups":[{"id":"people","label":"People","entries":[{"key":"dc:contributor.advisor","label":"Advisor","values":["Lin, Xiaodong"]},{"key":"dc:creator","label":"Author","values":["Gao, Yatian"]}]},{"id":"academic_context","label":"Academic Context","entries":[{"key":"dc:date.accessioned","label":"Dc Date Accessioned","values":["2017-06-09T18:19:13Z","2022-03-29T17:34:01Z"]},{"key":"dc:date.available","label":"Dc Date Available","values":["2017-06-09T18:19:13Z","2022-03-29T17:34:01Z"]},{"key":"dc:date.issued","label":"Date","values":["2017-04-01"]},{"key":"dc:type","label":"Dc Type","values":["Thesis"]},{"key":"thesis:degree_discipline","label":"Discipline","values":["Computer Science"]},{"key":"thesis:degree_name","label":"Degree Name","values":["Master of Science (MSc)"]},{"key":"thesis:institution_name","label":"Thesis Institution Name","values":["University of Ontario Institute of Technology"]}]},{"id":"subjects_keywords","label":"Subjects and Keywords","entries":[{"key":"dc:subject","label":"Dc Subject","values":["Android application","Model-based testing","Software testing"]}]},{"id":"language_rights","label":"Language and Rights","entries":[{"key":"dc:language.iso","label":"Language (ISO)","values":["en"]}]},{"id":"identifiers","label":"Identifiers","entries":[{"key":"dc:identifier.uri","label":"Identifier URI","values":["https://hdl.handle.net/10155/763"]}]},{"id":"additional","label":"Additional Metadata","entries":[{"key":"dc:description.abstract","label":"Abstract","values":["The rising popularity of Android and the component-based structure of its apps have motivated the need for automated model-based testing techniques on Android plat- form. Prior researches have primarily focused on the GUI-based model of Android apps. GUI-based model only includes Activity targeting graphical user interfaces. It neglects other components such as Service and Broadcast Receiver in the Android Development Framework. Although the GUI-based model testing has achieved a good testing result targeting the graphical user interface, its effectiveness has been decreasing as Android applications become more complex in both functional behaviors and component-based structure. This phenomenon challenges the feasibility of currently existing model-based testing on Android platform. To address the challenges mentioned above, we propose a component-based approach of automated model generation for model-based testing on Android platform in this thesis. First, we extend the state definition in the model. Activity, Service and Broadcast Receiver are abstracted into the component-based model as states. Newly introduced states can depict the behaviors of a given app in a larger scope for better descriptive modeling and input generation. Second, we extend transition definition, and also propose a static mapping transition builder for transition construction across different kinds of components. Then the event sequence generator &amp; cluster is proposed to generate proper test sequences for testing. The event cluster assists the input generation of the component-based model testing. Also, we present CamDroid, a tool implementing the proposed approach for An- droid apps testing. Lastly, our experiments have corroborated CamDroid&apos;s ability to build a model connecting components including Service, Activity and Broadcast Receiver. It can overcome the new challenges of Android apps in model-based testing. As a result, component-based model can achieve better performance in real model- based testing in terms of code coverage, comparing to the traditional GUI-based model testing."]},{"key":"dc:title","label":"Title","values":["Component-based modeling for Android application testing"]}]}],"canonical_facts":{"dc:contributor.advisor":["Lin, Xiaodong"],"dc:creator":["Gao, Yatian"],"dc:date.accessioned":["2017-06-09T18:19:13Z","2022-03-29T17:34:01Z"],"dc:date.available":["2017-06-09T18:19:13Z","2022-03-29T17:34:01Z"],"dc:date.issued":["2017-04-01"],"dc:description.abstract":["The rising popularity of Android and the component-based structure of its apps have motivated the need for automated model-based testing techniques on Android plat- form. Prior researches have primarily focused on the GUI-based model of Android apps. GUI-based model only includes Activity targeting graphical user interfaces. It neglects other components such as Service and Broadcast Receiver in the Android Development Framework. Although the GUI-based model testing has achieved a good testing result targeting the graphical user interface, its effectiveness has been decreasing as Android applications become more complex in both functional behaviors and component-based structure. This phenomenon challenges the feasibility of currently existing model-based testing on Android platform. To address the challenges mentioned above, we propose a component-based approach of automated model generation for model-based testing on Android platform in this thesis. First, we extend the state definition in the model. Activity, Service and Broadcast Receiver are abstracted into the component-based model as states. Newly introduced states can depict the behaviors of a given app in a larger scope for better descriptive modeling and input generation. Second, we extend transition definition, and also propose a static mapping transition builder for transition construction across different kinds of components. Then the event sequence generator &amp; cluster is proposed to generate proper test sequences for testing. The event cluster assists the input generation of the component-based model testing. Also, we present CamDroid, a tool implementing the proposed approach for An- droid apps testing. Lastly, our experiments have corroborated CamDroid&apos;s ability to build a model connecting components including Service, Activity and Broadcast Receiver. It can overcome the new challenges of Android apps in model-based testing. As a result, component-based model can achieve better performance in real model- based testing in terms of code coverage, comparing to the traditional GUI-based model testing."],"dc:identifier.uri":["https://hdl.handle.net/10155/763"],"dc:language.iso":["en"],"dc:subject":["Android application","Model-based testing","Software testing"],"dc:title":["Component-based modeling for Android application testing"],"dc:type":["Thesis"],"thesis:degree_discipline":["Computer Science"],"thesis:degree_name":["Master of Science (MSc)"],"thesis:institution_name":["University of Ontario Institute of Technology"]},"updated_at":"2026-07-24T05:35:43Z"}