For the past few years I've been using Jetty to support test automation by launching an embedded Jetty container on which to deploy various web components programmatically, run tests against it, etc. Can I do something like this with the new JBoss 5 release? Does it have an "embedding" API and if it does, is it as fast as Jetty to boot up in a test?
There is nothing like this that I know of in the 5.0 release. Though that release is much more dependent on th4e microcontainer, and many of the services are moving to be microcontainer based. And that should aide in performing tests without having to launch the whole server. But that capability would be dependent on each individual service - in other words, there would not be a overall JBossAS approach.
The nice thing about EJB3 is that you can easily unit test most of your components because they're just POJOs. If you want to do more integration-style testing, the embeddable container may work. JBoss Seam has support for integration testing by allowing your test to simulate JSF lifecycle events. Read here:
Just saw that Spring and Pitchfork allows you to use Spring to do dependency injection of resources and interceptors on EJB3 beans. That seems powerful in that you could then presumably test all this stuff outside of the server. That seems to be what Seam is providing in the way of testability, is that right?