As I mentioned on the last tck-dev call, I have ported 3 examples of a
legacy JavaTest appclient test over to Junit5/Arquillian. The example
repo for running these tests against WildFly is here:
https://github.com/jakartaredhat/wildfly-eetck.gitAs stated in the
https://github.com/jakartaredhat/wildfly-eetck/blob/main/README.md,
there are 2 snapshot builds of dependent repos needed to successfully
run:
* The WildFly Arquillian container:
git clone
https://github.com/starksm64/wildfly-arquillian.gitThis includes an updated Arquillian managed container that supports
both the launching of the appclient test artifact to the server as
well as the launching of the appclient container to run the appclient
main method entrypoint. This requires a new appclient protocol that
does the actual launch of the appclient main process and parses the
output to produce the test result. The appclient protocol should be
pulled out into a common protocol at some point as it should be a
common protocol that has no ties to WildFly container specific
behavior.
* The Jakarta EE TCK Arquillian/Junit5 tests:
git clone
https://github.com/jakartaredhat/jakartaee-tck.gitbranch is ejb-arq-test
This is a branch of the tckrefactor branch that has the following tests ported:
com/sun/ts/tests/ejb30/bb/session/stateless/basic/ClientTest.class
com/sun/ts/tests/ejb30/bb/session/stateless/annotation/appexception/annotated/ClientTest.class
com/sun/ts/tests/ejb30/bb/session/stateless/annotation/enventry/ClientTest.class
Scott Marlow had sent an email about some issues with the appexception
ClientTest and then updated its base class behavior to match what we
saw in the run of the legacy JavaTest runs. These tests are still
using logic from the JavaTest days because the mechanism for asserting
if a test passes is coupled to a consistent format for the log output
of the test.
Next steps are to add an ejblite vehicle and then to pull in how the
vendor porting libs and configuration properties usage need to be
supported. Hopefully with those two updates there will be a better
idea of what automation could be done.
Pulling the appclient protocol and framework into the
arquillian-jakarta repo for use by other vendor container
implementations is also next step.
Take a look and this and provide comments if you can. We will talk
about it in the next dev meeting.