sca-assembly-testing message
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
| [List Home]
Subject: Re: [sca-assembly-testing] Restructuring the Layout of the TestCases - TestDirectory structure
- From: Bryan Aupperle <aupperle@us.ibm.com>
- To: "OASIS Test " <sca-assembly-testing@lists.oasis-open.org>
- Date: Wed, 20 May 2009 16:35:13 -0400
One additional realization; some of
the sca-contribution.xml files will need to be modified as additional language
contributions are added to with appropriate import.xxx element.
Bryan Aupperle, Ph.D.
STSM, WebSphere Enterprise Platform Software Solution Architect
Research Triangle Park, NC
+1 919-254-7508 (T/L 444-7508)
Internet Address: aupperle@us.ibm.com
Mike Edwards <mike_edwards@uk.ibm.com>
05/13/2009 05:37 AM
|
To
| "OASIS Test " <sca-assembly-testing@lists.oasis-open.org>
|
cc
|
|
Subject
| [sca-assembly-testing] Restructuring
the Layout of the TestCases - Test Directory structure |
|
Folks,
This is both a follow-up to Bryan's email on the subject of directory structure
and also an explanation of the recent
changes that I have made to the layout of the Assembly testcases, which
you will now see if you look at the latest code
in OASIS SVN:
http://tools.oasis-open.org/version-control/browse/wsvn/sca-assembly/TestCases/#_TestCases_
Bryan rightly made the point that there are broadly 3 classes of artifacts:
1. XML artifacts with no dependencies on any implementation language
eg Composite files using only <implementation.composite/>
and <interface.wsdl/>
WSDL files, XSDs
2. XML artifacts with dependencies on an implementation language
eg. Composite files using <implementation.java/> (etc)
3. Language specific artifacts
Java class files, etc
First, I have tried to make a clean separation between 1. and 2.
There is now a directory "General" which contains those language
independent artifacts which can be used by multiple testcases, for example.
For language dependent artifacts, I propose that we create directories
with names ending in "_xxxx" where xxxx identifies the language.
So:
"General_Java" - contains Java related artifacts
"General_BPEL" - contains BPEL related artifacts
"General_CPP" - contains C++ related artifacts
... and so on.
Note that in SCA terms, each of these directories represents a Contribution
In many cases, I think that type 2) artifacts can and should be held in
the same directory as the language specific artifacts that they use.
So, "General_Java" would contain the Java classes required by
the Composite files that are held in that directory.
Now, Bryan also separately points out that there are numerous artifacts
which are deliberately in error. It is undesirable for such artifacts
to be in places shared by multiple tests since SCA runtimes are permitted
to reject such artifacts out of hand when a contribution is
presented to the runtime which contains such artifacts, assuming that the
errors are detectable by static analysis.
Such artifacts in error must be placed in separate directories which represent
separate contributions which are only referenced and used
by specific testcases that are looking at the errors concerned (typically
only one test will access these artifacts).
I have already gone well down this road, with a series of directories with
names like "ASM_12001" - the name here being clearly linked
to the testcase which uses it.
I propose that we combine these 2 approaches. Sometimes, a specific
testcase (with artifacts containing errors) will also have a split
of language-dependent artifacts and language independent artifacts. These
should be split between 2 directories, along this pattern:
"ASM_12001"
"ASM_12001_Java"
How is the choice of language handled when running the tests?
I have extended BaseJAXWSTestCase.java to now include handling an OASIS_TESTENV_IMPL_LANG
environment variable or System property.
This can be set to the name of the language to run:
"Java" for Java
"BPEL" for BPEL
"CPP" for C++
etc
It defaults to Java....
Each testcase which makes use of language specific artifacts then must
name the language specific Contributions that it uses as follows:
"General" + _Lang
- _Lang is a protected variable in BaseJAXWSTestCase into which the chosen
language is placed - so that for the language choices
above you get:
General_Java
General_BPEL
General_CPP
The _Lang variable can be applied to any contribution name stem, so that
a given test can depend on as many language specific
contributions as necessary.
If folks are happy with this approach, then I will add a section to the
TestCases document which describes all of this.
Yours, Mike.
Strategist - Emerging Technologies, SCA & SDO.
Co Chair OASIS SCA Assembly TC.
IBM Hursley Park, Mail Point 146, Winchester, SO21 2JN, Great Britain.
Phone & FAX: +44-1962-818014 Mobile: +44-7802-467431
Email: mike_edwards@uk.ibm.com
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
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
| [List Home]