1 of 1 people found this helpful
It's a little bit of baggage from the split up of the modules. Basically we use the classpath as a way to resolve our extensions(and at the time we had no 'exclude' extension option).
So Arquillian has some 'core' extensions:
* Arquillian Core (required, the event core)
* Arquillian Test (adds Suite/Class/Test contexts + Before|After events for TestLifecycle)
** Arquillan can here function as a common abstraction layer between the different TestFrameworks
* Arquillian Container (adds Container/Deployment contexts + Before|After events for Container LifeCycle)
** Arquillian can here function as a pure Container controller, e.g. Seam Forge, JBoss Tools, Maven integration
* Arquillian Container Test (adds a integration layer between Test and Container, what you know as 'Arquillian')
With this module layout, Arquillian can be used as a Pure Test Extension (no containers/deployment support) or as a pure Container controller(no Tests fluff).
So, the XXX-container testframework pulls in the dependency tree for doing Arquillian Test+Container, while XXX-standalone has the dependency tree for Arquillian Test (only).
The difference between standalone and container (besides the dependency tree) is the use of Local Only vs Local and Remote test execution.
There has been added some new features to Arquillian Core so we could share these executors in the Test module now, by excluding the other executor depending on the which module you are. But we still need them for the dependency tree resolving.
does that help?
Thanks, now I think I understand
I think I found some leftovers from the module split activity. Will post here in the evening cause I don't have my notes now. Maybe there will be some small cleanup task for me