17 research outputs found
Designing A Combinatorial Java Unit Testing Tool.
Software testing relates to the process of executing a
program or system with the intent of finding errors.
Covering as much as 40 to 50 percent of the development
costs and resources, software testing is an integral part of
the software development lifecycle
Testing embedded system through optimal mining technique (OMT) based on multi-input domain
Testing embedded systems must be done carefully particularly in the significant regions of the embedded systems. Inputs from an embedded system can happen in multiple order and many relationships can exist among the input sequences. Consideration of the sequences and the relationships among the sequences is one of the most important considerations that must be tested to find the expected behavior of the embedded systems. On the other hand combinatorial approaches help determining fewer test cases that are quite enough to test the embedded systems exhaustively. In this paper, an Optimal Mining Technique that considers multi-input domain which is based on built-in combinatorial approaches has been presented. The method exploits multi-input sequences and the relationships that exist among multi-input vectors. The technique has been used for testing an embedded system that monitors and controls the temperature within the Nuclear reactors
Validation of Constraints Among Configuration Parameters Using Search-Based Combinatorial Interaction Testing
The appeal of highly-configurable software systems lies in their adaptability to users’ needs. Search-based Combinatorial Interaction Testing (CIT) techniques have been specifically developed to drive the systematic testing of such highly-configurable systems. In order to apply these, it is paramount to devise a model of parameter configurations which conforms to the software implementation. This is a non-trivial task. Therefore, we extend traditional search-based CIT by devising 4 new testing policies able to check if the model correctly identifies constraints among the various software parameters. Our experiments show that one of our new policies is able to detect faults both in the model and the software implementation that are missed by the standard approaches
Combinatorial Interaction Testing for Automated Constraint Repair
Highly-configurable software systems can be easily
adapted to address user’s needs. Modelling parameter configurations
and their relationships can facilitate software reuse. Combinatorial
Interaction Testing (CIT) methods are already often
used to drive systematic testing of software system configurations.
However, a model of the system’s configurations not conforming
with respect to its software implementation, must be repaired in
order to restore conformance. In this paper we extend CIT by
devising a new search-based technique able to repair a model
composed of a set of constraints among the various software
system’s parameters. Our technique can be used to detect and
fix faults both in the model and in the real software system.
Experiments for five real-world systems show that our approach
can repair on average 37% of conformance faults. Moreover, we
also show it can infer parameter constraints in a large real-world
software system, hence it can be used for automated creation of
CIT models
Development of an automated unit testing tool for java program.
Software testing relates to the process of executing a program or system with the intent of finding errors. Covering as much as 25 to 35 percent of the development costs and resources, software testing is an integral part of the software development lifecycle.
Pengujian softwer melibatkan proses melarikan sesuatu program atau sistem dengan tujuan untuk mengesan kesalahan. Dengan kos pembangunan dan sumber meliputi 25 hingga 30
peratus, pengujian adalah antara bahagian utama dalam kitar hayat pembangunan softwer
Combinatorial-Based Prioritization for User-Session-Based Test Suites
Software defects caused by inadequate software testing can cost billions of dollars. Further, web application defects can be costly due to the fact that most web applications handle constant user interaction. However, software testing is often under time and budget constraints. By improving the time efficiency of software testing, many of the costs associated with defects can be saved. Current methods for web application testing can take too long to generate test suites. In addition, studies have shown that user-session-based test suites often find faults missed by other testing techniques. This project addresses this problem by utilizing existing user sessions for web application testing. The software testing method provided within this project utilizes previous knowledge about combinatorial coverage testing and improves time and computer memory efficiency by only considering test cases that exist in a user-session based test suite. The method takes the existing test suite and prioritizes the test cases based on a specific combinatorial criterion. In addition, this project presents an empirical study examining the application of the newly proposed combinatorial prioritization algorithm on an existing web application
A survey on test suite reduction frameworks and tools
Software testing is a widely accepted practice that ensures the quality of a System under Test (SUT). However, the gradual increase of the test suite size demands high portion of testing budget and time. Test Suite Reduction (TSR) is considered a potential approach to deal with the test suite size problem. Moreover, a complete automation support is highly recommended for software testing to adequately meet the challenges of a resource constrained testing environment. Several TSR frameworks and tools have been proposed to efficiently address the test-suite size problem. The main objective of the paper is to comprehensively review the state-of-the-art TSR frameworks to highlights their strengths and weaknesses. Furthermore, the paper focuses on devising a detailed thematic taxonomy to classify existing literature that helps in understanding the underlying issues and proof of concept. Moreover, the paper investigates critical aspects and related features of TSR frameworks and tools based on a set of defined parameters. We also rigorously elaborated various testing domains and approaches followed by the extant TSR frameworks. The results reveal that majority of TSR frameworks focused on randomized unit testing, and a considerable number of frameworks lacks in supporting multi-objective optimization problems. Moreover, there is no generalized framework, effective for testing applications developed in any programming domain. Conversely, Integer Linear Programming (ILP) based TSR frameworks provide an optimal solution for multi-objective optimization problems and improve execution time by running multiple ILP in parallel. The study concludes with new insights and provides an unbiased view of the state-of-the-art TSR frameworks. Finally, we present potential research issues for further investigation to anticipate efficient TSR frameworks
Practical Combinatorial Interaction Testing: Empirical Findings on Efficiency and Early Fault Detection
Combinatorial interaction testing (CIT) is important because it tests the interactions between the many features and parameters that make up the configuration space of software systems. Simulated Annealing (SA) and Greedy Algorithms have been widely used to find CIT test suites. From the literature, there is a widely-held belief that SA is slower, but produces more effective tests suites than Greedy and that SA cannot scale to higher strength coverage. We evaluated both algorithms on seven real-world subjects for the well-studied two-way up to the rarely-studied six-way interaction strengths. Our findings present evidence to challenge this current orthodoxy: real-world constraints allow SA to achieve higher strengths. Furthermore, there was no evidence that Greedy was less effective (in terms of time to fault revelation) compared to SA; the results for the greedy algorithm are actually slightly superior. However, the results are critically dependent on the approach adopted to constraint handling. Moreover, we have also evaluated a genetic algorithm for constrained CIT test suite generation. This is the first time strengths higher than 3 and constraint handling have been used to evaluate GA. Our results show that GA is competitive only for pairwise testing for subjects with a small number of constraints
Enhancing Formal Modelling Tool Support with Increased Automation
Progress report for the qualification exam report for PhD Student Kenneth Lausdahl. Initial work on enhancing tool support for the formal method VDM and the concept of unifying a abstract syntax tree with the ability for isolated extensions is described. The tool support includes a connection to UML and a test automation principle based on traces written as a kind of regular expressions