| Michelle Caisse 2005-06-06, 7:48 am |
| Hi, all,
Here is a summary of the tck20 build issues. I would like to discuss
this at the TCK conference call tomorrow (Friday).
The default build ("maven" or "maven build") compiles the code, enhances
the pc classes, and runs the unit tests, which are the TCK tests. It
expects to find everything either in the maven repository (typically
~/.maven/repository) or in test-classes. In theory, this is where the
TCK tests would be run on the Reference Implementation.
We have customized the build with the goal "runtck" (and other goals).
In theory, this is where an Implementation Under Test (iut) would be
run. One of the features of this goal is that the user can
parametrically select a configuration (currently application identity or
datastore identity) to run the tests on, without having to recompile or
re-enhance. The enhanced classes and metadata are stored in a jar file
and the appropriate jar file is put on the classpath depending on the
user-selected configuration. This ability to switch classpaths is not
available with the default maven build.
In the near future we hope to upgrade the build so that all tests, or
specified lists of tests, are run on all configurations automatically.
We also will provide the ability to automatically create the database
schema required for a particular set of tests and mapping, and to drop
the schema after the tests have run. Users will be able to provide DDL
scripts and connection information to run all tests on the database of
their choice.
I think the basic question we need to answer is this:
Do we provide a limited unit test functionality with the default maven
build? Or do we attempt to gracefully disable the unit test feature of
the default build and require that users invoke a custom goal to run any
tests?
Thanks to Michael Bouschen for clarifying my confusions about maven.
-- Michelle
|