Improving software quality through extreme coverage with Jblanket
Unit testing is an important part of software testing that aids in the discovery of bugs sooner in the software development process. Extreme Programming (XP), and its Test First Design technique, relies so heavily upon unit tests that the first code implemented is made up entirely of test cases. Fur...
Main Author: | |
---|---|
Other Authors: | |
Published: |
University of Hawaii at Manoa
2009
|
Online Access: | http://hdl.handle.net/10125/6967 |
id |
ndltd-UHAWAII-oai-scholarspace.manoa.hawaii.edu-10125-6967 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-UHAWAII-oai-scholarspace.manoa.hawaii.edu-10125-69672013-01-08T11:10:21ZImproving software quality through extreme coverage with JblanketAgustin, Joy MUnit testing is an important part of software testing that aids in the discovery of bugs sooner in the software development process. Extreme Programming (XP), and its Test First Design technique, relies so heavily upon unit tests that the first code implemented is made up entirely of test cases. Furthermore, XP considers a feature to be completely coded only when all of its test cases pass. However, passing all test cases does not necessarily mean the test cases are good. Extreme Coverage (XC) is a new approach that helps to assess and improve the quality of software by enhancing unit testing. It extends the XP requirement that all test cases must pass with the requirement that all defect-prone testable methods must be invoked by the tests. Furthermore, a set of flexible rules are applied to XC to make it as attractive and light-weight as unit testing is in XP' One example rule is to exclude all methods containing one line of code from analysis. I designed and implemented a new tool, called JBlanket, that automates the XC measurement process similar to the way that JUnit automates unit testing. JBlanket produces HTML reports similar to JUnit reports which inform the user about which methods need to be tested next. In this research, I explore the feasibility of JBlanket, the amount of effort needed to reach and maintain XC, and the impact that knowledge of XC has on system implementation through deployment and evaluation in an academic environment. Results show that most students find JBlanket to be a useful tool in developing their test cases, and that knowledge of XC did influence the manner in which students implemented their systems. However, more studies are needed to conclude precisely how much effort is needed to reach and maintain XC. This research lays the foundation for future research directions. One direction involves increasing its flexibility and value by expanding and refining the rules of XC. Another direction involves tracking XC behavior to find out when it is and is not applicable.xii, 108 leavesUniversity of Hawaii at ManoaJohnson, Philip M2009-03-06T19:32:42Z2009-03-06T19:32:42Z2003-052003-05ThesisTexthttp://hdl.handle.net/10125/6967All UHM dissertations and theses are protected by copyright. They may be viewed from this source for any purpose, but reproduction or distribution in any format is prohibited without written permission from the copyright owner.https://scholarspace.manoa.hawaii.edu/handle/10125/2079 |
collection |
NDLTD |
sources |
NDLTD |
description |
Unit testing is an important part of software testing that aids in the discovery of bugs sooner in the software development process. Extreme Programming (XP), and its Test First Design technique, relies so heavily upon unit tests that the first code implemented is made up entirely of test cases. Furthermore, XP considers a feature to be completely coded only when all of its test cases pass. However, passing all test cases does not necessarily mean the test cases are good. Extreme Coverage (XC) is a new approach that helps to assess and improve the quality of software by enhancing unit testing. It extends the XP requirement that all test cases must pass with the requirement that all defect-prone testable methods must be invoked by the tests. Furthermore, a set of flexible rules are applied to XC to make it as attractive and light-weight as unit testing is in XP' One example rule is to exclude all methods containing one line of code from analysis. I designed and implemented a new tool, called JBlanket, that automates the XC measurement process similar to the way that JUnit automates unit testing. JBlanket produces HTML reports similar to JUnit reports which inform the user about which methods need to be tested next. In this research, I explore the feasibility of JBlanket, the amount of effort needed to reach and maintain XC, and the impact that knowledge of XC has on system implementation through deployment and evaluation in an academic environment. Results show that most students find JBlanket to be a useful tool in developing their test cases, and that knowledge of XC did influence the manner in which students implemented their systems. However, more studies are needed to conclude precisely how much effort is needed to reach and maintain XC. This research lays the foundation for future research directions. One direction involves increasing its flexibility and value by expanding and refining the rules of XC. Another direction involves tracking XC behavior to find out when it is and is not applicable. === xii, 108 leaves |
author2 |
Johnson, Philip M |
author_facet |
Johnson, Philip M Agustin, Joy M |
author |
Agustin, Joy M |
spellingShingle |
Agustin, Joy M Improving software quality through extreme coverage with Jblanket |
author_sort |
Agustin, Joy M |
title |
Improving software quality through extreme coverage with Jblanket |
title_short |
Improving software quality through extreme coverage with Jblanket |
title_full |
Improving software quality through extreme coverage with Jblanket |
title_fullStr |
Improving software quality through extreme coverage with Jblanket |
title_full_unstemmed |
Improving software quality through extreme coverage with Jblanket |
title_sort |
improving software quality through extreme coverage with jblanket |
publisher |
University of Hawaii at Manoa |
publishDate |
2009 |
url |
http://hdl.handle.net/10125/6967 |
work_keys_str_mv |
AT agustinjoym improvingsoftwarequalitythroughextremecoveragewithjblanket |
_version_ |
1716506032452141056 |