@Test public void preAnswer() { try { StringWriter sw = new StringWriter(); Response response = new Response(); response.preAnswer = new PreAnswer(); response.preAnswer.speak = new Speak("This call will cost you $2 a minute."); response.speak = new Speak("Hey, thanks for dropping by."); JAXBContext jaxbContext = JAXBContext.newInstance(Response.class); Marshaller jaxbMarshaller = jaxbContext.createMarshaller(); jaxbMarshaller.setProperty(Marshaller.JAXB_FRAGMENT, Boolean.FALSE); // output pretty printed jaxbMarshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, false); jaxbMarshaller.marshal(response, sw); Assert.assertEquals( "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?><Response><PreAnswer><Speak>This call will cost you $2 a minute.</Speak></PreAnswer><Speak>Hey, thanks for dropping by.</Speak></Response>", sw.toString()); } catch (JAXBException e) { e.printStackTrace(); Assert.fail(e.getMessage()); } }