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-...
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(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/seam-dev