-
Bug
-
Resolution: Unresolved
-
Major
-
None
-
1.2.0.Final
-
None
I have uber-ear and wanna to ci some EE-integration tests on it
My ear has two incarnations: prod and test. Test-ear contains productive modules + test-modules (+ arquillian auxiliary jars for Servlet 3 proto support). So I can`t deploy my ear per test nor per suite, only once per ci-build - in same build on same ear also runs drone ui-tests.
i need not arq to manage my ear, so I set @Deployment(managed=false). The problem is tests are executing in RunAsClient-mode, but I need server-side mode! This is because of RunmodeUtils#isRunAsClient:
if (deployment != null) { runAsClient = deployment.getDescription().testable() ? false : true; runAsClient = deployment.isDeployed() ? runAsClient : true; // -- my ear not managed so not isDeployed()
I created my own DoNothingDeployer, but can`t override ClientDeployer nor ContainerDeployer.
I tried to call deployment.deployed() before ClientTestExecuter#execute, but cannot understand event model so good enough – either Instance<Deployment>#get() is null,
or deployment.deployed() doesn`t affect at all. Maybe exists good doc (or javadoc) about arq event model? can`t find :'(
Why can`t run server-side tests with not-managed deployment?
Why in general we can`t run server-side tests without any @Deployment? We using @Drone-tests without @Deployment and it`s very good.
We preparin` deployment through non-shrinkwrap way, so why we need to define non-useful @Deployment-method (or DeploymentScenarioGenerator)?