GithubHelp home page GithubHelp logo

star-finder / jpf-costar Goto Github PK

View Code? Open in Web Editor NEW
3.0 3.0 2.0 10.35 MB

Test input generation using separation logic

Home Page: https://star-finder.github.io/

Java 99.92% Shell 0.01% Dockerfile 0.07%
concolic-execution separation-logic testing-tools test-automation testing-framework unit-testing

jpf-costar's Introduction

Concolic StarFinder

Concolic StarFinder (JSF) is a unit test generation tool for programs that make extensive use of dynamically allocated data structures such as lists and trees. Users need to provide a precondition, an inductive predicate in separation logic, to describe the input data structure. CSF then performs mix of concrete and symbolic, or concolic, execution on the program to generate test cases, and use the precondition to guide its search.

Publication

  • Long H. Pham, Quang Loc Le, Quoc-Sang Phan, Jun Sun. Concolic Testing Heap-Manipulating Programs. FM 2019. [PDF]

Questions and Issues

For common questions, bug reports, and feature requests, please use the JPF Google Group.

To run all the test

Suppose you are in the root directory of jpf-costar, simply run:

$ bin/testAll.sh

jpf-costar's People

Contributors

longph1989 avatar qsphan avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

jpf-costar's Issues

Build fails because of lack of Plexil example

Since the source (or binary) of the Plexil example is missing, the ant build is failing when trying to compile src/examples/plexil/parser/Driver.java and src/examples/plexil/parser2/Driver.java.

Obsolete Java 8 ppa

jpf-costar/Dockerfile

Lines 11 to 13 in b3f4d48

add-apt-repository ppa:webupd8team/java -y && \
apt-get update -y && \
apt-get install -y oracle-java8-installer

Since April 2019 webupd8 is no longer providing the ppa for Oracle Java 8, because of Oracle's change in license. A possible alternative is the ppa for Trusty of OpenJDK 8 hosted by OpenJDK Builds; the three lines should be changed to:

    add-apt-repository ppa:openjdk-r/ppa -y && \
    apt-get update -y && \
    apt-get install -y openjdk-8-jdk && \

Some other changes are necessary, i.e., deleting the line that removes /var/cache/oracle-jdk8-installer, and setting JAVA_HOME to /usr/lib/jvm/java-8-openjdk-$ARCH, where ARCH is the architecture.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.