问题
I have created run configuration in Maven Projects
for
mvn -Dit.test=PredictionWorkflowTest verify
which looks like here
and then set breakpoint inside PredictionWorkflowTest
. Unfortunately, when I right click this configuration and select to debug it, tests passes as if no breakpoint were set.
How to make breakpoints working?
If I run test by clicking class itself, then breakpoints trigger, but integration conditions don't me (servers not starting).
回答1:
Step 1: Add debug to maven run configuration
You are probably using Maven Failsafe Plugin to run the tests as explained in their documentation
If that's the case you need to add -Dmaven.failsafe.debug
(documentation here) to your maven configuration so it becomes
mvn -Dit.test=PredictionWorkflowTest verify -Dmaven.failsafe.debug
.
When you run this maven command, the debugger will be listening at port 5005 by default
Step 2: Configure remote debugger in IntelliJ
Now in IntelliJ you need to configure a remote debugger configuration on localhost
and port 5005
Remote debugger configuration for integration tests
Step 3: Debug your app
Finally, run the maven command. Just before testing it will stop and wait for the debugger to start running the tests. The following message will be displayed in the terminal
Listening for transport dt_socket at address: 5005
Then start remote debugger configured in step 2. This should allow you to debug your app on integration tests break-points.
来源:https://stackoverflow.com/questions/49390110/how-to-debug-integration-test-in-intellij