Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [platform-releng-dev] platform HIPP - running the tests?

On 11/09/2013 04:22 PM, Stephan Herrmann wrote:
I was pleasantly surprised to see that hudson is already doing
build-individual-bundles jobs for jdt.core (and others), cool!
(Did I miss the big hurray announcement? :) )
I've sent a mail on the same mailing list some weeks ago telling that Gerrit was now enabled http://dev.eclipse.org/mhonarc/lists/platform-releng-dev/msg21628.html . However I did not mention it's using only module build with -Pbuild-individual-bundles.
This mail also also speaks about the current issues with automated tests with Tycho and how to handle a +1 or a -1 vote from Hudson on a Gerrit patch.


One question remaining:

[INFO] --- tycho-surefire-plugin:0.19.0:test (default-test) @ org.eclipse.jdt.core.tests.compiler ---
[INFO] Skipping tests

Are there any plans to actually run the tests per bundle?
Tests are disabled by default: http://git.eclipse.org/c/platform/eclipse.platform.releng.aggregator.git/tree/eclipse-platform-parent/pom.xml#n19 . You can override that locally by and run tests by using the following command line:
  $ mvn clean verify -Pbuild-individual-bundles -Dmaven.test.skip=false -DskipTests=false
Most of the test are working well with surefire, but some have some assumption that don't apply to surefire and needs some tweaks, either in test code or in surefire configuration (for example to add a dependency). Here is the umbrella bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=416904 and the one for JDT Core: https://bugs.eclipse.org/bugs/show_bug.cgi?id=417026

This would be awesome and even I as a committer would switch
to using gerrit so I could delegate the testing to hudson.
As soon as tests are working with surefire, jobs can simply be changed to set the properties as explained above, so tests will be run and taken into account for vote. Note that if we can do it with Hudson, it means that you'll also be able to run tests locally.

Without the tests I see little benefit - and contributers may
actually be misled to believing that a +1 from Hudson says
more than the absence of compile errors (which they should
already see in their local workspaces).
Hudson vote is not enough for accepting a change, it also requires a manual review. Hudson voting +1 means to the reviewer that it's worth looking at the review. Hudson voting -1 means that  it's not even necessary to look at the code, because this patch is bad anyway. This is already true for checking compilation errors, and this will be still true when tests will be enabled.
Hudson itself is nothing but an indicator, it's not a guarantee of a good stuff. When it comes to compilation errors, it can happen that someone have only a single project open in Workspace and make breaking changes without noticing the impact on other bundles, which are absent or closed. So some compilation errors can be missed in workspace.
And in general, the value of Gerrit is not in the automated vote from Hudson, but more in the ability to review and discuss about code more easily and handle a "lifecycle" for a patch.

Cheers.
--
Mickael Istria
Eclipse developer at JBoss, by Red Hat
My blog - My Tweets

Back to the top