Powered by OpenAIRE graph
Found an issue? Give us feedback
https://doi.org/10.1...arrow_drop_down
https://doi.org/10.14264/b8b6f...
Doctoral thesis . 2025 . Peer-reviewed
Data sources: Crossref
https://doi.org/10.14264/15840...
Doctoral thesis . 2024 . Peer-reviewed
Data sources: Crossref
DBLP
Doctoral thesis
Data sources: DBLP
UQ eSpace
Thesis . 2007
Data sources: UQ eSpace
UQ eSpace
Thesis . 2007
Data sources: UQ eSpace
versions View all 5 versions
addClaim

A framework for statistical testing of software components

Authors: Shukla, Rakeshkumar Yogendrakumar;

A framework for statistical testing of software components

Abstract

The term "statistical testing" is used when statistics is applied to software testing. Statistics provides sampling theory, a sound theoretical foundation for statistical testing. However, two difficult and important issues must be addressed in statistical testing. The first issue is determining an accurate operational profile. Statistical testing of a software component from a user's point of view depends largely on the manner in which the component is used. Characterisation of the population of expected use is referred to as an operational profile. An operational profile is a set of input events and their associated probabilities of occurrence expected in actual operation. The test cases that are executed during a statistical test are a sample from the operational profile. As such, accurate operational profiles are a critical part of statistical testing. Determining an operational profile for the generation of test cases that are representative of actual usage is still a difficult issue despite the considerable research in this area in recent years. Developing an accurate operational profile for software is difficult in general and it is very difficult for many software components because it requires anticipating the future use of the component. The usage behaviour is typically modelled by either Markov models or finite state machines. Previous work has focused on exploring the occurrence of operations and has ignored parameters for operations. This thesis presents a systematic method for deriving operational profiles for software components that uses probabilistic statecharts to model operational profiles and that addresses the issue of parameters for operations. The second issue is development of a test oracle for output evaluation. Test output evaluation is also a difficult and important problem for statistical testing. Most of the potential benefits of testing will be lost if the success or failure of test cases is not assessed. An expected result is needed for each test case to check the test output. The mechanism used for test output evaluation is called a test oracle. A test oracle is an essential part of statistical testing, because a large number of test cases is required to represent the operational usage and the behaviour must be checked for every test case. Test result evaluation using a test oracle is widely acknowledged in the software testing literature as a critical aspect of the testing process. Several methods for developing test oracles, such as those using specifications and documentation, have been reported. Unfortunately development and maintenance of such resources may require considerable effort. A limitation in using such a resource is that the test oracle is only as good as the resource from which it was derived. To address these issues, this thesis presents a technique to develop a test oracle that uses the component to check its own behaviour for test output evaluation. While a number of proposals for statistical testing of software have been made, the execution of test cases and test output evaluation are often not addressed in these proposals. This thesis presents a conceptual framework for statistical testing of software components that supports both test case execution and output evaluation. The framework proposed in this thesis is supported by a prototype tool for test case generation, test case execution and output evaluation. The tool supports a wide range of operational profile approaches for test case generation and a variety of test oracles for output evaluation. This thesis demonstrates the practical viability, flexibility and scalability of the framework and tool support by applying them on several case studies, including a third-party component. Experience with the framework indicates that it can be used successfully for small to medium-sized components, including third-party components such as COTS components. The overall effectiveness of the statistical testing process depends on both the accuracy of the operational profile and the effectiveness of the test oracle to detect and report the errors encountered during testing. This thesis presents an empirical evaluation of different types of operational profiles to determine how accurately the test cases generated from the operational profiles represent the actual usage of the component and different types of test oracles to determine their fault-detection ability.

Country
Australia
Related Organizations
Keywords

000, School of Information Technology and Electrical Engineering, Computer software -- Testing, 40 Engineering

  • BIP!
    Impact byBIP!
    selected citations
    These citations are derived from selected sources.
    This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
    0
    popularity
    This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network.
    Average
    influence
    This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
    Average
    impulse
    This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network.
    Average
Powered by OpenAIRE graph
Found an issue? Give us feedback
selected citations
These citations are derived from selected sources.
This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
BIP!Citations provided by BIP!
popularity
This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network.
BIP!Popularity provided by BIP!
influence
This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
BIP!Influence provided by BIP!
impulse
This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network.
BIP!Impulse provided by BIP!
0
Average
Average
Average
Upload OA version
Are you the author of this publication? Upload your Open Access version to Zenodo!
It’s fast and easy, just two clicks!