Aaron Digulla
Aaron Digulla

Reputation: 328754

How can I debug test cases run by Tycho?

When using Tycho to build a project, the test cases are run in a new process using the equinox launcher to run -application org.eclipse.tycho.surefire.osgibooter.headlesstest.

How can I debug the test cases?

Upvotes: 10

Views: 2668

Answers (2)

jsievers
jsievers

Reputation: 1853

There is a much easier way to accomplish this:

just add -DdebugPort=8000 to your Maven commandline and attach a remote debug session.

See the docs https://www.eclipse.org/tycho/sitedocs/tycho-surefire-plugin/test-mojo.html#debugPort

Upvotes: 8

Aaron Digulla
Aaron Digulla

Reputation: 328754

Add this to your POM:

<profiles>
    <profile>
        <id>debug</id>

        <build>
            <plugins>
                <plugin>
                    <groupId>org.eclipse.tycho</groupId>
                    <artifactId>tycho-surefire-plugin</artifactId>
                    <version>${tycho-version}</version>
                    <configuration>
                       <argLine>-Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=y</argLine>
                    </configuration>
                </plugin>
            </plugins>
        </build>
    </profile>
</profiles>

Now you can enable debugging with mvn ... -P debug when the following line is printed:

Listening for transport dt_socket at address: 8000

See the Eclipse help how to configure the IDE.

Upvotes: 5

Related Questions