Testing automation tools for secure software development

Download
Author
Eatinger, Christopher J.
Date
2007-06Advisor
Auguston, Mikhail
Second Reader
Eagle, Chris
Metadata
Show full item recordAbstract
Software testing is a crucial step in the development of any software system, large or small. Testing can reveal the presence of logic errors and other flaws in the code that could cripple the system's effectiveness. Many flaws common in software today can also be exploited to breach the security of the system on which the software is running. These flaws can be subtle and difficult to find. Frequently it takes a combination of multiple events to bring them out. Traditional testing techniques focus on dealing with errors as they arise during normal operation of the system. This technique is not particularly effective. Thus, recent research has focused on developing new, more effective software testing techniques. Two such techniques are combinatorial testing and fuzz testing. This thesis explores the effectiveness of combining both combinatorial testing and fuzz testing into a single software testing tool to aid in the discovery of subtle system flaws. The tools developed for testing automation by this thesis will aid in the development of secure software, and bolster the ranks of testing techniques available to future developers.
Collections
Related items
Showing items related by title, author, creator and subject.
-
Software testing for evolutionary iterative rapid prototyping
Davis, Edward V., Jr. (Monterey, California: Naval Postgraduate School, 1990-12);Rapid prototyping is emerging as a promising software development paradigm. It provides a systematic and automatable means of developing a software system under circumstances where initial requirements are not well known ... -
Dependable Software through a Holistic Framework of Tool Interoperability and Artifact Dependency
Luqi; Puett, J. (Monterey, California. Naval Postgraduate School, 2002-07); NPS-SW-02-006Objectives. The goal of this research is to develop a holistic framework for engineering dependable computing and communications software. The framework establishes collaborative mechanisms by which existing software ... -
An evaluation of a test scheduling solution
Kelly, Timothy James (Monterey, California. Naval Postgraduate School, 1993-03);As recognized in the software engineering process, software testing during development is an aspect that must be improved to accurately predict and reduce probabilities of future software failures. A possible method of ...