I agree tests that leverage the actual assembly would be nice. I've often found problems because I run the Blog and AriesTrader samples and many folks don't.

One minor correction to Zoe's note is that there are not yet any itests for AriesTrader ... but I've created a JIRA so I don't forget to create some.

Ideally, we should have all of the itests running on the actual sample assembly rather than simulating the assembly with the itests (which I believe is the current configuration for the Blog itests).

Also, I think we should create a single test harness assembly that can be shared for all of our samples. AFAIK, the only difference between blog-assembly (for Blog) and the equinox-test-harness (for AriesTrader) are that each includes the respective datasource bundle for their particular sample. I original created (and named) the equinox-test-harness with the idea that it should be moved to a new location and enhanced to support multiple samples.

Incorporating the actual assembly we create for users into the itests would definitely provide much better test coverage.

Joe

On 9/22/10 6:31 AM, Timothy Ward wrote:

I really think that we need to run the assemblies as part of our testing every 
build.

We can use embedded ant to launch the assembly, and to copy the EBA into the 
load directory, then to launch some standard JUnits that ping the servlets to 
see if they're awake. This will give us a much more reliable mechanism to show 
that the assemblies work.

Tim

----------------------------------------
Date: Wed, 22 Sep 2010 10:46:29 +0100
From: [email protected]
To: [email protected]
Subject: Re: blog and aries trader assembly

Hi

The assembly projects assemble the OSGi platform needed to run samples.
The only way to be _completely_ certain that the assembly hasn't been
broken is to is to run the sample. We introduced i-tests for Aries
Trader and the Blog Sample that mimic the behaviour of the assembly
projects, and these give a good indication of when an assembly is likely
to have been broken. So the first rule is that if you have to change a
sample i-test you almost certainly have to change the assembly project.

The place where the assembly differs from the i-test is that, to run an
eba on the platform which has been assembled, you have to copy the eba
into a load directory. This exact process is not replicated in the
i-tests so anyone making changes to application, and in particular, the
code which installs applications really should (currently) manually run
the blog sample :-)

I think we might be able to do some more sophisticated testing, but I'm
not sure how. The other option is for developers to periodically run the
blog sample. Of course, there are other samples (hello world) which
don't have i-tests and are probably broken too.

More generally - there seems to have been some significant re-factoring
'Application', thinking ahead to the next release - could someone
summarise the changes?

Zoƫ


I am just wondering how to remind people (especially new joiners) to
maintain the assembly code as the full assembly process is not part of
build. Is it too much to make it part of build? Any thoughts?

Regards
Emily





Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number
741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU







                                        


--
Joe

Reply via email to