Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

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?

like image 616
Aaron Digulla Avatar asked Feb 03 '23 07:02

Aaron Digulla


2 Answers

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

like image 116
jsievers Avatar answered Feb 04 '23 21:02

jsievers


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.

like image 34
Aaron Digulla Avatar answered Feb 04 '23 20:02

Aaron Digulla