/features/reflectionOfCurrentBehavior.svgSymbolic execution

Symflower’s technology

Symflower relies on symbolic execution to generate high-coverage JUnit tests for your Java, Spring, or Spring Boot applications.

Our IDE plugin symbolically executes your code to identify the input values that trigger the execution of all possible paths in your code resulting in high-coverage tests for your source code.


Works where you are

Symflower is available in the IDE of your choice, your favorite terminal and as a CI/CD integration.

Try Symflower


About symbolic execution


Meaningful unit tests & targeted values

Symflower’s test suites contain essential tests that cover all possible unique paths of your code. Test candidates are computed instead of being randomly chosen, resulting in mathematical precision and the highest test coverage possible.


Efficient & convenient testing

Unit tests generated by Symflower are easy to read and understand. Generated test templates follow mainstream conventions, test inputs are optimized for reading, and mocks are used automatically for both Java and Spring Boot applications.


Complex data types

Not restricted to primitive data types and simple source code. Symflower can handle and analyze concepts such as complex data types, interfaces and object orientation.


Slim unit test suites

No redundant test cases. Each generated test case adds value by executing a new behavior of a function.


Symbolic execution with Symflower


Test template generation

Generate all the boilerplate code for unit testing, and focus on your actual test candidates.


Debugging edge cases

Generated tests reveal edge cases for you to debug, and provide instant reproducers for your source code.


Problem detection

Symflower works out-of-the-box. Install the plugin in your IDE or download the CLI version and get started.


Real-time test generation

Forget having to figure out how to design inputs to test a certain part of your source code. Generate JUnit tests rapidly and with mathematical precision.


Automatic mocking

Automatically generate mocks for interfaces with their behavioral checks, and handle all unanticipated possibilities. Mocking is supported for both Java and Spring Boot applications.


Completely local

Symflower runs on your machine and does not send your code to any servers.

Learn more about symbolic execution


What is symbolic execution for software programs?

Understand symbolic execution, the solution that helps Symflower automatically create unit test cases with high coverage.

Learn more

Symbolic execution vs fuzzing for creating test values

Fuzzing and symbolic execution are alternatives for automatically creating test values. Find out about the pros and cons of each technique.

Read post

Symflower & GitHub Copilot: AI vs Symbolic Execution

Find out how to efficiently combine a generative AI tool like GitHub Copilot with a test generation tool like Symflower in your daily coding workflow.

Go to article

Get started with Symflower

Ready to save time and effort on testing? Install Symflower and use it for free.

Try for free