You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@avalon.apache.org by Niclas Hedhman <ni...@hedhman.org> on 2004/03/11 06:54:59 UTC
TCK thoughts
Gang,
I am sketching on the "TCK issue" and have identified some concerns that I
would like to share and discuss.
* * Definition of Specification requirements * *
Specifications are evolvable, meaning at the point of a release, they have a
version and what is in it is set in stone. There can not be any changes to
the specification, and any 'undefined' areas must remain undefined until a
revised version of the specification is released.
* * Decomposition of specification * *
Avalon should allow smaller specifications, one for each concern (SoC), each
evolvable and versioned accordingly. Some concerns may have competing
specifications, such as LifeCycle specifications.
* * Test Compatibility Kit (TCK) * *
The TCK is a composition of many parts. Along one axis, there is the
separation of concern between ContainerCompliance and ComponentCompliance,
and along the other axis is the separation of TestHarness, ComplianceSuite
and SystemUnderTest. For each version of a speficiation, there must be a
ComplianceSuite which is also versioned in the codebase itself.
The TestHarness brings in a SystemUnderTest and executes one or many
ComplianceSuite(s), effectively able to test the system against one or many
specifications.
TCK Harness for Components have the trouble to either do introspection (source
or class), or have to deal with dependency resolutions of components, which
may even render many components untestable.
TCK Harness for Containers have the problems of Inversion of Control, where it
needs to invert (!) that. Perhaps there needs to be a Specification for
Container Testability. The only alternative that I can see is that the
Container provides the TCK Harness itself.
I think I stop here and see if anyone has some reflections.
Niclas
--
+---------//-------------------+
| http://www.bali.ac |
| http://niclas.hedhman.org |
+------//----------------------+
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@avalon.apache.org
For additional commands, e-mail: dev-help@avalon.apache.org
Re: TCK thoughts
Posted by Berin Loritsch <bl...@d-haven.org>.
Niclas Hedhman wrote:
> TCK Harness for Containers have the problems of Inversion of Control, where it
> needs to invert (!) that. Perhaps there needs to be a Specification for
> Container Testability. The only alternative that I can see is that the
> Container provides the TCK Harness itself.
>
> I think I stop here and see if anyone has some reflections.
One idea for testing the container is to have a Test Component, or set of test
components that excersize all the contracts from the component view point.
The TCK would provide the hook to create the container, and access the test
component. If the container failed to create the component and satisfy its
requirements then the test failed.
There would probably have to be multiple tests of this type due to the different
contracts that need to be tested.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@avalon.apache.org
For additional commands, e-mail: dev-help@avalon.apache.org
Re: TCK thoughts
Posted by Jonathan Hawkes <jh...@adsnm.com>.
> * * Definition of Specification requirements * *
> Specifications are evolvable, meaning at the point of a release, they have
a
> version and what is in it is set in stone. There can not be any changes to
> the specification, and any 'undefined' areas must remain undefined until a
> revised version of the specification is released.
+1
> * * Decomposition of specification * *
> Avalon should allow smaller specifications, one for each concern (SoC),
each
> evolvable and versioned accordingly. Some concerns may have competing
> specifications, such as LifeCycle specifications.
+1
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@avalon.apache.org
For additional commands, e-mail: dev-help@avalon.apache.org