Many automatic test data generation techniques have been proposed in the past decades. Each technique can only deal with very restrictive data types so far. This limits the usefulness of test data generation in practice. We present a preliminary approach on hybrid test data generation, by combining Random Strategy (RS), Dynamic Symbolic Execution (DSE), and Search-based Strategy (SBS). It is expected to take advantage of the state-of-the-arts to enhance the robustness and scalability, in terms of different types of test data.
Abstract-Symbolic execution maintains a path condition pc for every possible path of a program. It is challenging to construct a pc if some complex issues are involved in the path. A predicate interpretation pi is a subexpression of a pc and a pc of a path is a conjunction of all pis in the path. Predicate interpretation has been widely used in theoretical analysis on domain testing and related fields. It recently emerges new impact on software testing by using partial path constraints to generate test data. In this paper, we propose an approach to produce pis in a program. A tool for predicate interpretation analysis for Java programs is implemented based on the data-flow framework of Soot. Most of Java features can be handled in our tool. Moreover, a formal rule of predicate interpretation analysis is presented for more applications in the future. The experimental results show that our tool can produce pis of a program effectively and efficiently.
Dynamic mechanical behavior and microstructural evolution of 7A52-T6 aluminum alloy were investigated at elevated temperatures ranging from 150 to 350°C and strain rates ranging from 2000s−1 to 5000s−1 using a compressive hospitalization pressure bar (SHPB) system. The results show that 7A52 aluminum alloy has obvious temperature sensitivity, but the sensitivity to strain rate is weak. The effects of temperature on the microstructure of 7A52 aluminum alloy are significant, and the dislocation density decreases with the increase of temperature. With the increase of impact temperature, some of the η’ phases are dissolved, and some of them are transformed into η phases. This study in general provides a significant understanding on the relationship between microstructure evolution and mechanical behavior of 7A52-T6 aluminum alloy under dynamic loading and at elevated temperature.
Any program may contain more than one fault, and these faults may interfere with each other in a variety of ways. Software behavior may be affected by the interference, resulting in some uncertain results. Such results have negative impact on many software engineering tasks, including regression testing, fault localization, debugging, fault clustering etc. Therefore, understanding the interference becomes an important topic. This paper investigates the fault interference from the perspective of software construction. We introduce the coupling of software construction in order to explain the reasons for fault interference. We observed that different types of coupling may cause three kinds of fault interference and have different probabilities to make the software strike the fault interference traps. We conducted a preliminary experiment on four industrial programs. The results show that our approach gives a good explanation on fault interference.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.