What's new in JSFUnit 2.0.0?
There are two major changes in JSFUnit 2.x. The first is that you can more easily use Arquillian instead of Cactus. This allows you to use JUnit 4 or TestNG. It also provides for much faster execution times. In addition, there is a set of JSFUnit annotations that let you replace some boiler-plate code you had to write over and over to create JSFSession, JSFClientSession, and JSFServerSession.
Are there any examples?
Click here for a "getting started" example.
What about the JSFUnit support that's found in the Arquillian project?
That Arquillian support code would only work with JSFUnit 1.3. It is now considered deprecated. This way, JSFUnit and Arquillian can have seperate release schedules and innovate independently.
Can I still use my old Cactus-based JSFUnit tests?
Yes. You can either run these tests with Arquillian or continue to use Cactus. If you want to use Cactus and JSFUnit 2.x with Maven, you will use
<dependency> <groupId>org.jboss.jsfunit</groupId> <artifactId>jsfunit-cactus</artifactId> <version>2.0.0.Beta1</version> </dependency>
And you no longer need jboss-jsfunit-core because jsfunit-cactus will pull it in as a dependency
<dependency> <groupId>org.jboss.jsfunit</groupId> <artifactId>jboss-jsfunit-core</artifactId> </dependency>
What containers are supported?
JSFUnit 2.x will run with any container supported by Arquillian or Cactus.
Do I still need to modify my web.xml to run JSFUnit?
Since JSFUnit 1.3, web.xml modification is not needed when running in Servlet 3 containers. That is still true.
What if I'm not using Servlet 3 and I want to use JSFUnit 2.x with Cactus?
Add the web.xml declarations found on the Getting Started page.
What if I'm not using Servlet 3 and I want to use JSFUnit 2.x with Arquillian?
Add the web.xml declarations found in this web-fragment.xml file.