JDart is a tool for performing concolic execution on a Java program. The aim of concolic execution is to explore additional behavior in the program by generating input values which will result in a different path being taken through a program (or method). The result of concolic execution is a constraints tree, i.e., a tree with its inner nodes reflecting the decisions that were made during the execution of the program. The nodes on the trees are labeled as: OK if the method was regularly exited, ERROR if there was an exception, or DONT_KNOW if no valuation could be generated for the respective path.

Currently, the constraints tree is represented only as a plain text file which makes identifying the nodes and the statuses of leaves extremely hard in such a simplistic representation. To provide a better user experience, I will develop a web interface to visualize the constraints trees generated by JDart. At a very basic level, a user will have an intuitive overview on the whole generated trees. At a later stage, I will enable interactive operations on the web interface, e.g. letting user select on which part of a tree JDart should focus on.





  • Zvonimir
  • Falk Howar
  • Luckow