Associated research group: Critical Systems Research GroupSymbolic execution is a popular technique for automatically generating test cases achieving high structural coverage. Symbolic execution suffers from scalability issues since the number of symbolic paths that need to be explored is very large (or even infinite) for most realistic programs. To address this problem, we propose a technique, Simple Static Partitioning, for parallelizing symbolic execution. The technique uses a set of pre-conditions to partition the symbolic execution tree, allowing us to effectively distribute symbolic execution and decrease the time needed to explore the symbolic execution tree. The proposed technique requires little communication between parallel insta...
We present an algorithm for automatic testing of distributed programs, such as Unix processes with i...
Although a number of weaknesses of symbolic execution, when used for software testing, have been hig...
A symbolic execution task is dynamically divided among multiple computing nodes. Each of the multipl...
Symbolic execution is a powerful, systematic program analysis approach that has received much visibi...
Abstract—Testing plays a key role in assessing the quality of a software product. During testing, a ...
In software testing, a program is executed in hopes of revealing faults. Over the years, specific te...
The object of research is means to increase computational effectiveness for automatic unit test gene...
We present an algorithm for tests generation tools based on symbolic execution. The algorithm is sup...
textAutomating the generation of test cases for software is an active area of research. Specificati...
Test data generation is one of the most important and crucial phases in software testing. Structural...
AbstractThis paper presents a practical approach to parallelize the test data generation algorithm b...
Scaling symbolic execution to large programs or programs with complex inputs remains difficult due t...
textRecent advances in test automation have seen a host of new techniques for automated test genera...
Graduation date: 2015Software testing is of critical importance for the success of software projects...
Modern software systems, which often are concurrent and manipulate complex data structures must be ...
We present an algorithm for automatic testing of distributed programs, such as Unix processes with i...
Although a number of weaknesses of symbolic execution, when used for software testing, have been hig...
A symbolic execution task is dynamically divided among multiple computing nodes. Each of the multipl...
Symbolic execution is a powerful, systematic program analysis approach that has received much visibi...
Abstract—Testing plays a key role in assessing the quality of a software product. During testing, a ...
In software testing, a program is executed in hopes of revealing faults. Over the years, specific te...
The object of research is means to increase computational effectiveness for automatic unit test gene...
We present an algorithm for tests generation tools based on symbolic execution. The algorithm is sup...
textAutomating the generation of test cases for software is an active area of research. Specificati...
Test data generation is one of the most important and crucial phases in software testing. Structural...
AbstractThis paper presents a practical approach to parallelize the test data generation algorithm b...
Scaling symbolic execution to large programs or programs with complex inputs remains difficult due t...
textRecent advances in test automation have seen a host of new techniques for automated test genera...
Graduation date: 2015Software testing is of critical importance for the success of software projects...
Modern software systems, which often are concurrent and manipulate complex data structures must be ...
We present an algorithm for automatic testing of distributed programs, such as Unix processes with i...
Although a number of weaknesses of symbolic execution, when used for software testing, have been hig...
A symbolic execution task is dynamically divided among multiple computing nodes. Each of the multipl...