[seam-dev] Arquillian Testsuite structure for Modules
Shane Bryzak
sbryzak at redhat.com
Sat Aug 20 11:02:41 EDT 2011
I've made some progress in this area, so far I've created a few of the
container boms in seam-parent and also started converting the Solder
tests to use the new structure.
I have run into one issue though - when running the tests I'm
encountering the error below. The reason it hasn't manifested in the
International module is because there was a version mismatch between
some of the test suite artifacts, however if you synchronize them all
you get the same error.
[INFO] Reactor Summary:
[INFO]
[INFO] Seam International Test Suite: Aggregator ......... SUCCESS [1.224s]
[INFO] Seam Container BOMs Aggregator .................... SUCCESS [0.025s]
[INFO] Weld EE Embedded 1.1 Container .................... SUCCESS [0.899s]
[INFO] JBoss AS7 Managed Container ....................... SUCCESS [2.722s]
[INFO] Seam International Test Suite Common .............. SUCCESS [0.376s]
[INFO] Seam International Test Suite: Internals Integration Tests
SUCCESS [0.013s]
[INFO] Seam International Test Suite: Internals Integration Tests Base
SUCCESS [0.743s]
[INFO] Seam International Test Suite: Internals Integration Tests for
JBoss AS FAILURE [2.529s]
[INFO] Seam International Test Suite: Internals Integration Tests for
Weld EE Embedded SKIPPED
[INFO]
------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO]
------------------------------------------------------------------------
[INFO] Total time: 9.393s
[INFO] Finished at: Sun Aug 21 00:55:38 EST 2011
[INFO] Final Memory: 25M/348M
[INFO]
------------------------------------------------------------------------
[ERROR] Failed to execute goal
org.apache.maven.plugins:maven-dependency-plugin:2.1:unpack
(unpack-base-tests) on project
seam-international-testsuite-integration-internals-jbossas: Error
unpacking file:
/home/shane/project/seam/international/testsuite/internals/base/target/classes
to:
/home/shane/project/seam/international/testsuite/internals/jbossas/target/test-classes
[ERROR] org.codehaus.plexus.archiver.ArchiverException: The source must
not be a directory.
[ERROR] -> [Help 1]
I've spent a little time trying to find a workaround but it seems that
this has been a known bug in Maven for at least 4 years. If anyone
wants to take a look at this and try to figure out a workaround in the
meantime please be my guest.
Shane
On 30/07/11 12:16, Ken Finnigan wrote:
> All,
>
> I've committed the work on the Arquillian testsuite infrastructure on
> the i18n module which can be found here:
> https://github.com/seam/international/tree/develop/testsuite
>
> Here are some notes on how it's structured and what needs to be done:
>
> * API and Impl modules still retain unit tests that don't require
> container testing
> * testsuite/common includes Deployment and Library helpers and
> anything that would be common to multiple types of testsuites,
> such as internals, smoke, etc
> o The helpers from this module could potentially be pulled up
> into a common module for all, but that may introduce
> complexity in trying to use it in each module so may be best
> to leave it there for the moment and see how it goes
> * testsuite/container-boms contains the container definition for
> weld ee embedded and AS7. Others can be found at
> https://github.com/mojavelinux/arquillian-showcase/tree/master/container-boms
> o One of the first things that needs to happen is these
> container-boms need to be created in a seam parent module of
> some kind such that each module can utilize them without
> having to replicate the content directly
> * testsuite/internals/base contains the test classes that used to be
> within impl. For i18n I was able to leave the entirety of the
> test classes in the bases module and simply explode it into the
> target/test-classes directory of the
> testsuite/internals/${container} modules as part of the
> integration-test phase.
> o To make it easier to then explode the jar built from this
> module into sub modules, the test classes and resources
> actually need to be in src/main. As we don't plan using the
> jar built from this for anything other than testing it's not
> an issue.
> * container tests are only activated on the integration-test phase
> and skipped on the basic test phase
> * https://github.com/seam/international/blob/develop/testsuite/README.md
> outlines all the proposed types of suites that testsuite can
> contain. I believe an initial first step should be to move the
> existing container tests, or create some, for the internals
> module. Over time we can then look to flesh out the testsuite
> with additional types such as smoke, cluster, api, etc
> * One area that I haven't looked at yet is code coverage given that
> the tests are further spread than previously. I'm hoping that it
> will be relatively easy to amalgamate all the coverage data to
> produce a single report.
>
> Any questions about this please let me know.
>
> Ken
>
>
> _______________________________________________
> seam-dev mailing list
> seam-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/seam-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/seam-dev/attachments/20110821/277299d5/attachment.html
More information about the seam-dev
mailing list