Skip to main content

Accessing Symflower's settings in IntelliJ IDEA

Up in the menu bar, click IntelliJ IDEA > Settings:

"Up in the menu bar, click IntelliJ IDEA > Settings:"

In Settings, go to Tools > Symflower:

Select Symflower under Tools.

Symflower's configuration options in IntelliJ IDEs

The following user settings are available in Symflower in IntelliJ editors:

Binary path

You can specify the path to the Symflower binary here. Specify an absolute file system path, define a command to be looked up by the PATH environment variable, or leave it empty to look up the default binary.

The default is /usr/local/bin/symflower.

Log level

Set the log level to debug or verbose.

Fetch dependencies

Specify whether Symflower should download and analyze external libraries when analyzing source code. Symflower downloads and parses external libraries only the first time they are encountered, which can take some time depending on your project. For subsequent invocations, the libraries are read from cache, making the analysis quicker.

Code vision: Create test

Enable or disable the "create test" code vision which allows you to create test templates with a single click on the code vision that automatically appears above functions.

Memory limit

You can specify a maximum memory usage for Symflower. In case the memory usage exceeds the user-defined limit (specified in MB), Symflower stops the analysis. Zero means no limit.

The default is 1024.

On save

To streamline your workflow, Symflower can automatically generate tests when you're saving your file. Off by default, this setting lets you enable unit test generation upon saving a file. Once enabled, test suite generation will be triggered in the background every time the file is saved, but the test file will not be opened automatically.

Java framework

You can set the default test framework for generating Java unit tests to be JUnit 4, JUnit 5, or automatic (default).


For Go code, Symflower can generate tests in two styles: basic or table-driven (default).

Solver timeout

Set a timeout (defined in seconds) to specify a maximum for how long each solver call can run during test input generation.

The default is 10 seconds.


Set a timeout (defined in seconds) to specify a maximum for how long test input generation for a single function can run in general.

The default is 60 seconds.