Document Type

Thesis

Degree

Master of Science (MS)

Major/Program

Computer Science

First Advisor's Name

Peter J. Clarke

First Advisor's Committee Title

Committee Chair

Second Advisor's Name

Tariq M. King

Second Advisor's Committee Title

Committee Member

Third Advisor's Name

Leonardo Bobadilla

Third Advisor's Committee Title

Committee Member

Fourth Advisor's Name

Monique Ross

Fourth Advisor's Committee Title

Committee Member

Keywords

Testing, Automation, Artificial intelligence, Machine learning, Web classification, Test generation, Language

Date of Defense

11-9-2018

Abstract

Achieving high software quality today involves manual analysis, test planning, documentation of testing strategy and test cases, and development of automated test scripts to support regression testing. This thesis is motivated by the opportunity to bridge the gap between current test automation and true test automation by investigating learning-based solutions to software testing. We present an approach that combines a trainable web component classifier, a test case description language, and a trainable test generation and execution system that can learn to generate new test cases. Training data was collected and hand-labeled across 7 systems, 95 web pages, and 17,360 elements. A total of 250 test flows were also manually hand-crafted for training purposes. Various machine learning algorithms were evaluated. Results showed that Random Forest classifiers performed well on several web component classification problems. In addition, Long Short-Term Memory neural networks were able to model and generate new valid test flows.

Identifier

FIDC007028

ORCID

https://orcid.org/0000-0003-0480-5773

Creative Commons License

Creative Commons Attribution 4.0 License
This work is licensed under a Creative Commons Attribution 4.0 License.

Share

COinS
 

Rights Statement

Rights Statement

In Copyright. URI: http://rightsstatements.org/vocab/InC/1.0/
This Item is protected by copyright and/or related rights. You are free to use this Item in any way that is permitted by the copyright and related rights legislation that applies to your use. For other uses you need to obtain permission from the rights-holder(s).