An Arquillian JSFUnit Test Class is an ordinary JUnit 4 class using Arquillian's @RunWith and @Deployment annotations. It also uses JSFUnit Annotations to configure and inject JSFSession, JSFClientSession, and JSFServerSession objects.
Here is a simple example:
@RunWith(Arquillian.class) public class MyTest { @Deployment public static WebArchive createDeployment() { WebArchive war = ShrinkWrap .create(WebArchive.class) .addPackage(Package.getPackage("org.jboss.jsfunit.example.hellojsf")) .addAsWebInfResource(new File("src/main/webapp/WEB-INF/faces-config.xml"), "faces-config.xml")); war.setWebXML(new StringAsset(createWebXML().exportAsString())); return war; } @Test @InitialPage("/index.faces") public void testGetCurrentViewId(JSFServerSession server) throws IOException { // Test navigation to initial viewID assertViewId("/index", server.getCurrentViewID()); Assert.assertEquals(server.getCurrentViewID(), server.getFacesContext().getViewRoot().getViewId()); } }
Comments