Generating Mixed-Level Covering Arrays of Lambda = 2 and Test Prioritization

abstract: In software testing, components are tested individually to make sure each performs as expected. The next step is to confirm that two or more components are able to work together. This stage of testing is often difficult because there can be numerous configurations between just two componen...

Full description

Bibliographic Details
Other Authors: Ang, Nicole (Author)
Format: Dissertation
Language:English
Published: 2015
Subjects:
Online Access:http://hdl.handle.net/2286/R.I.29857
Description
Summary:abstract: In software testing, components are tested individually to make sure each performs as expected. The next step is to confirm that two or more components are able to work together. This stage of testing is often difficult because there can be numerous configurations between just two components. Covering arrays are one way to ensure a set of tests will cover every possible configuration at least once. However, on systems with many settings, it is computationally intensive to run every possible test. Test prioritization methods can identify tests of greater importance. This concept of test prioritization can help determine which tests can be removed with minimal impact to the overall testing of the system. This thesis presents three algorithms that generate covering arrays that test the interaction of every two components at least twice. These algorithms extend the functionality of an established greedy test prioritization method to ensure important components are selected in earlier tests. The algorithms are tested on various inputs and the results reveal that on average, the resulting covering arrays are two-fifths to one-half times smaller than a covering array generated through brute force. === Dissertation/Thesis === Masters Thesis Computer Science 2015