How can I run all tests from two or more IDEA modules at once?
I\'m using many modules and it is important to run all of the unit tests often and when I choose more tha
Select all modules, right-click them and choose to run all tests. This will create a configuration called "Whole Project" which you can run again at any time.
I found this better than the accepted answer because this runs the unit tests separately for each module. If your test cases use module-specific resources during its run-time then the accepted answer's best way won't work.
Select all modules
Right click and choose to run all tests
Get a new run configuration
This worked for me for a project with multiple modules.
Create a new JUnit run/debug configuration. Test kind: 'All in package' Search for tests: 'Whole project'
You will have to specify a working directory as well.
You have to create a "Run Configuration":
Best way way: (edit after 3 years)
There is even a better way to achieve this.
Select menu "Run" → "Edit Configurations...". Click green plus in left top corner and select JUnit.
Select "Test kind" to "Pattern" and enter this regexp exactly as you see it: ^(?!.*IT$).*$
(it starts with caret ^
and ends with dollar $
). This regexp says: all tests that do not finish with IT in their name.
Select "Search for tests" to "In whole project". Working directory should be set to top module working directory (it should be set by default).
Enter a Name for your test like "All Unit tests". I also prefere to mark "Share" option so this configuration won't disappear later. Click Apply and OK.
You can experiment with this regexp to fit your needs.
Original answer:
It is doable, although it's not comfortable.
test/java
directory and "Run All Tests". It creates test configuration.This way you run configurations in a sequence and every configuration gets a new tab. Still, better than nothing.
Another not so obvious case is when code coverage is needed on more than one project. The naive solution would be to select multiple projects and run all unit tests in them at once. As it turns out, unit tests may fail if the classpath changes and IntelliJ has exactly one classpath entry per run configuration. In this case, running unit tests on projects sequentially is actually sufficient. That's because at the end of each run IntelliJ (2017.2.5 Community Edition) asks if the collected coverage should replace or should be added to previously collected coverage stats.
For me both solutions didn't work or didn't work es expected.
For me I have 3 modules. My modules dependencies look like this
Presentation -> Domain -> Data
I just wanted to execute all tests together. So I came up with the 'Across module dependencies' approach
My Settings look like this: