If you run "mvn integration-test", Tycho will find all unit tests in all projects with packaging=eclipse-test-plugin in your build and run them. Tycho assumes your test projects depend on either org.junit or org.junit4 and uses different test runner depending on the junit version used.

Error message "Could not determine test framework used by test bundle pac_core.tests_1.0.0.qualifier" means that this project does not depend on org.junit/org.junit4 and tycho does not know how to run it.

If you specify both -DtestSuite and -DtestClass, Tycho will run specified test (suite) class only. testSuite is test bundle symbolic name and testClass is fully qualified test class name. The NPE you see is fixed in the latest Tycho DEV build (not officially declared, sorry) and means that Tycho could not find Maven project that corresponds to -DtestSuite=pac_core.configuration bundle symbolic name.

-DtestSuffix is only used when tycho generates pom.xml files for a set of PDE projects. This property is ignored during actual build.

Hope this helps.

--
Regards,
Igor


Hansen Candrawinata wrote:
Hi Igor,

Thanks for the reply.  It really helped me to understand more how Tycho
works.  I still, however,  found some problems (see below).

Thanks!
Hansen


I decided to follow the Eclipse convention to have a separate test bundle
for test classes.  I have three modules declared in my root pom.xml:
* core (the host plugin).
* core.tests (fragment bundling test classes for the host plugin).
* third-party-test (eclipse plugin containing third party jars such as
junit; core.tests is dependent upon this plugin).

However, I encountered the following exception when running "mvn
integration-test -DtestSuffix=.tests -e".  What could the cause be?

Error stacktrace:
org.apache.maven.lifecycle.LifecycleExecutionException: Internal error in
the plugin manager executing goal
'org.codehaus.tycho:maven-osgi-test-plugin:0.3.0-DEV-1819:test': Mojo
execution failed.
        at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:528)
        at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegmentForProject(DefaultLifecycleExecutor.java:288)
        at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:214)
        at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:172)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:218)
        at
org.apache.maven.embedder.MavenEmbedder.execute(MavenEmbedder.java:899)
        at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:176)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:63)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at
org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
        at
org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
        at
org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:408)
        at
org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:351)
Caused by: org.apache.maven.plugin.PluginExecutionException: Mojo execution
failed.
        at
org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:645)
        at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:521)
        ... 15 more
Caused by: org.apache.maven.plugin.MojoExecutionException: Could not
determine test framework used by test bundle pac_core.tests_1.0.0.qualifier
        at
org.codehaus.tycho.osgitest.TestMojo.getTestFramework(TestMojo.java:311)
        at org.codehaus.tycho.osgitest.TestMojo.execute(TestMojo.java:218)
        at
org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:623)
        ... 16 more


Furthermore, I got the an NPE when I ran "mvn integration-test
-DtestSuffix=.tests -DtestSuite=pac_core.configuration
-DtestClass=pac_core.configuration.AllTests -e".  Sorry, I could not find
any explanations on what -DtestSuite and -DtestClass should be, perhaps I
specified the wrong values?  Does testSuite refer to my junit test suite
class?  Does testClass refer to my junit test case class?

constituent[37]:
file:/c:/Program%20Files/tycho-distribution-0.3.0-DEV-1819/lib/xercesMinimal-1.9.6.2.jar
---------------------------------------------------
java.lang.NullPointerException
        at
org.codehaus.tycho.osgitools.OsgiStateController.getUserProperty(OsgiStateController.java:517)
        at
org.codehaus.tycho.osgitools.OsgiStateController.getMavenProject(OsgiStateController.java:525)
        at org.codehaus.tycho.osgitest.TestMojo.execute(TestMojo.java:197)
        at
org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:623)
        at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:521)
        at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegmentForProject(DefaultLifecycleExecutor.java:288)
        at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:214)
        at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:172)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:218)
        at
org.apache.maven.embedder.MavenEmbedder.execute(MavenEmbedder.java:899)
        at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:176)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:63)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at
org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
        at
org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
        at
org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:408)
        at
org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:351)


---------------------------------------------------------------------
To unsubscribe from this list, please visit:

   http://xircles.codehaus.org/manage_email


Reply via email to