Resolving Unspecified Software Features by Directed Random Testing
碩士 === 國立交通大學 === 資訊科學與工程研究所 === 96 === Testing is one of the most important phases of software quality assurance, for the process of software construction cannot guarantee the absence of bugs. Dynamic and static analysis tools are maturely developed in recent years. In 2005, the concept of concolic...
Main Authors: | , |
---|---|
Other Authors: | |
Format: | Others |
Language: | en_US |
Published: |
2007
|
Online Access: | http://ndltd.ncl.edu.tw/handle/58010718080438180981 |
id |
ndltd-TW-096NCTU5394006 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-TW-096NCTU53940062015-10-13T13:59:36Z http://ndltd.ncl.edu.tw/handle/58010718080438180981 Resolving Unspecified Software Features by Directed Random Testing 以導引式隨機測試方法探索軟體未規範實作功能 Li-Wen Hsu 許立文 碩士 國立交通大學 資訊科學與工程研究所 96 Testing is one of the most important phases of software quality assurance, for the process of software construction cannot guarantee the absence of bugs. Dynamic and static analysis tools are maturely developed in recent years. In 2005, the concept of concolic (combined word of concrete and symbolic) testing was proposed, which combines static and dynamic program analysis methods. In this thesis, we implement ALERT, a concolic testing framework and an Unspecified Software Feature (USF) Checker based on ALERT. By using automatic theorem prover library for satisfiability modulo theories, we can analyze and determine the inputs to direct program's execution along particular paths. With this mechanism, we can control the values in stack section. It can also be used to manipulate the values of uninitialized variables and to trigger specific behavior of the program. We present a two-phase testing algorithm in this thesis. In the first phase, we use dynamic analysis tool to retrieve real run-time information. In the second phase, we analyze the program by using concolic testing method with the data collected in the first phase. The result generated by the prover will be the input for the next testing run. This testing process iterates until a fault is found or all the program execution paths are enumerated. We use this tool to resolve unspecified program features caused by uninitialized variables. It successfully extracts the program behavior which cannot be found with traditional program analysis methods. The method in this thesis resolves the information lost problem caused by source code instrumentation in the process of testing and improves the accuracy of the test. Shih-Kun Huang 黃世昆 2007 學位論文 ; thesis 41 en_US |
collection |
NDLTD |
language |
en_US |
format |
Others
|
sources |
NDLTD |
description |
碩士 === 國立交通大學 === 資訊科學與工程研究所 === 96 === Testing is one of the most important phases of software quality assurance,
for the process of software construction cannot guarantee the absence of bugs.
Dynamic and static analysis tools are maturely developed in recent years.
In 2005, the concept of concolic (combined word of concrete and symbolic) testing was proposed,
which combines static and dynamic program analysis methods.
In this thesis, we implement ALERT, a concolic testing framework
and an Unspecified Software Feature (USF) Checker based on ALERT.
By using automatic theorem prover library for satisfiability modulo theories,
we can analyze and determine the inputs to direct program's execution along particular paths.
With this mechanism, we can control the values in stack section.
It can also be used to manipulate the values of uninitialized variables
and to trigger specific behavior of the program.
We present a two-phase testing algorithm in this thesis.
In the first phase, we use dynamic analysis tool to retrieve real run-time information.
In the second phase, we analyze the program by using concolic testing method
with the data collected in the first phase.
The result generated by the prover will be the input for the next testing run.
This testing process iterates until a fault is found or all the program execution paths are enumerated.
We use this tool to resolve unspecified program features caused by uninitialized variables.
It successfully extracts the program behavior which cannot be found with traditional program analysis methods.
The method in this thesis resolves the information lost problem caused by source code instrumentation in the
process of testing and improves the accuracy of the test.
|
author2 |
Shih-Kun Huang |
author_facet |
Shih-Kun Huang Li-Wen Hsu 許立文 |
author |
Li-Wen Hsu 許立文 |
spellingShingle |
Li-Wen Hsu 許立文 Resolving Unspecified Software Features by Directed Random Testing |
author_sort |
Li-Wen Hsu |
title |
Resolving Unspecified Software Features by Directed Random Testing |
title_short |
Resolving Unspecified Software Features by Directed Random Testing |
title_full |
Resolving Unspecified Software Features by Directed Random Testing |
title_fullStr |
Resolving Unspecified Software Features by Directed Random Testing |
title_full_unstemmed |
Resolving Unspecified Software Features by Directed Random Testing |
title_sort |
resolving unspecified software features by directed random testing |
publishDate |
2007 |
url |
http://ndltd.ncl.edu.tw/handle/58010718080438180981 |
work_keys_str_mv |
AT liwenhsu resolvingunspecifiedsoftwarefeaturesbydirectedrandomtesting AT xǔlìwén resolvingunspecifiedsoftwarefeaturesbydirectedrandomtesting AT liwenhsu yǐdǎoyǐnshìsuíjīcèshìfāngfǎtànsuǒruǎntǐwèiguīfànshízuògōngnéng AT xǔlìwén yǐdǎoyǐnshìsuíjīcèshìfāngfǎtànsuǒruǎntǐwèiguīfànshízuògōngnéng |
_version_ |
1717747130095894528 |