Arquillian is a testing framework on top of JUnit (or TestNG if you prefer). It makes it easier to do integration tests in a managed environment (JEE environment here after).
In an managed environment, it's usually quite difficult to do unit tests, cause most of the time you have to mock almost all the world. It's really time consuming and does not prevent to write integration tests to reflect the production environment. Hence, unit tests become pretty useless.
JEE always got seen as an heavy technology, impossible to test and to use in development. OpenEJB always fight against that idea and proved that it's really possible.
As David Blevins say:
"Don't blame EJBs (ie. Java EE) because your server isn't testable."
With latest Java EE specifications (5 and especially 6), it becomes a reality. Arquillian typically adresses that area. It basically a framework that aims at helping managing server/container in an agnostic way. Arquillian is responsible for the lifecycle of the container (start, deploy, undeploy, stop, etc).
TomEE community heavily invested on that framework to prove it's really useful and can really help testing Java EE application. That's also an opportunity to get the most of TomEE (lightweight, fast, featureful, etc).
All edits are reviewed before going live, so feel free to do much more than fix typos or links. If you see a page that could benefit from an entire rewrite, we'd be thrilled to review it. Don't be surprised if we like it so much we ask you for help with other pages :)NOTICE: unless indicated otherwise on the pages in question, all editable content available from apache.org is presumed to be licensed under the Apache License (AL) version 2.0 and hence all submissions to apache.org treated as formal Contributions under the license terms.