Proceedings Article10.1109/ICSME46990.2020.00105
Verifying and Testing Concurrent Programs using Constraint Solver based Approaches
Dhriti Khanna,Rahul Purandare,Subodh Sharma +2 more
- 01 Sep 2020
- pp 834-838
2
TL;DR: The worthiness and popularity of constraint solvers are utilized and the work is established in the realm of concurrent programs to improve the area of dynamic verification concerning the limitations of existing dynamic verification engines.
read more
Abstract: The success of dynamic verification techniques for confirming the absence of bugs in concurrent programs rests on their ability to systematically address the interleaving space arising because of the nondeterminism. However, existing dynamic verification engines suffer from the problem of scalability due to the size of the reachable state space that grows exponentially as the number of parallel entities increases. The second front on which the dynamic verification technique struggles is the dependence on the test cases to drive the program, thus being as efficient as the quality of the test cases. Lastly, any verification technique suffers from the lack of a significant benchmark of bugs to prove its worth. This work tries to improve the area of dynamic verification concerning the limitations as mentioned above. We utilize the worthiness and popularity of constraint solvers and establish our work in the realm of concurrent programs.
read more
Chat with Paper
AI Agents for this Paper
Find similar papers on Google Scholar, PubMed and Arxiv
Write a critical review of this paper
Analyze citations of this paper to find unaddressed research gaps
Citations
Bio-inspired optimization to support the test data generation of concurrent software
Ricardo Ferreira Vilela,João Choma Neto,Victor Hugo Santiago C. Pinto,Paulo Sergio Lopes de Souza,Simone R. S. Souza +4 more
TL;DR: In this paper , the authors proposed a test data generation approach for concurrent programs, called BioConcST, and a new operator for the selection of test subjects, called FuzzyST, which uses fuzzy logic.
Bio‐inspired optimization to support the test data generation of concurrent software
Ricardo Ferreira Vilela,João Choma Neto,Victor Hugo Santiago Costa Pinto,Paulo Sérgio Lopes de Souza,Simone do Rocio Senger de Souza +4 more
TL;DR: In this paper , the authors proposed a test data generation approach for concurrent programs, called BioConcST, and a new operator for the selection of test subjects, called FuzzyST, which uses fuzzy logic.
References
KLEE: unassisted and automatic generation of high-coverage tests for complex systems programs
Cristian Cadar,Daniel Dunbar,Dawson Engler +2 more
- 08 Dec 2008
TL;DR: A new symbolic execution tool, KLEE, capable of automatically generating tests that achieve high coverage on a diverse set of complex and environmentally-intensive programs, and significantly beat the coverage of the developers' own hand-written test suite is presented.
Symbolic execution and program testing
TL;DR: A particular system called EFFIGY which provides symbolic execution for program testing and debugging is described, which interpretively executes programs written in a simple PL/I style programming language.
•Book
Using MPI: Portable Parallel Programming with the Message-Passing Interface
William Gropp,Ewing Lusk,Anthony Skjellum +2 more
- 01 Jan 1994
TL;DR: Using MPI as mentioned in this paper provides a thoroughly updated guide to the MPI (Message-Passing Interface) standard library for writing programs for parallel computers, including a comparison of MPI with sockets.
2.9K
CUTE: a concolic unit testing engine for C
Koushik Sen,Darko Marinov,Gul Agha +2 more
- 01 Sep 2005
TL;DR: In this paper, the authors address the problem of automating unit testing with memory graphs as inputs, and develop a method to represent and track constraints that capture the behavior of a symbolic execution of a unit with memory graph as inputs.
Randoop: feedback-directed random testing for Java
Carlos Pacheco,Michael D. Ernst +1 more
- 20 Oct 2007
TL;DR: RANDOOP , which generates unit tests for Java code using feedback-directed random test generation, and RANDOOP, which is an annotation-based interface for specifying configuration parameters that affect R )'s behavior and output.
Related Papers (5)
Aarti Gupta
- 30 Oct 2011
Oleg Sokolsky,Grigore Rosu +1 more
- 01 Dec 2012
Le V. Tien,Quan T. Tho,D. Anh +2 more
- 01 Jan 2011