mydocuments-util-context.xml(예제 5-7 참고)에서는 각각 List와 Map 타입을 수용하는 <util:list />와 <util:map /> 태그를 추가할 수 있게 해주는 xmlns:util 네임스페이스를 추가했다. xmlns:util 네임스페이스는 <util:set />, <util:properties /> 그리고 <util: property-path /> 태그도 포함한다. 이들 컬렉션 태그도 사용하기 쉬우므로 자신만의 몇 가지 테스트를 해보기 바란다.
소스 코드를 모두 수정한 후에는 지금까지 해온 것과 같은 방식으로 gradle 도구를 사용해 유닛 테스트를 수행할 수 있다. 이 책의 부록 소스 코드 베이스 디렉터리에서는 다음 명령을 이용해 유닛 테스트를 수행한다.
$ gradle :ch05:test
또는 프로젝트 디렉터리에서 다음 명령을 실행해도 된다.
$ gradle test
다음 출력과 유사한 결과를 예상할 수 있다.
com.apress.isf.spring.test.MyDocumentsTest > testAll STARTED
com.apress.isf.spring.service.SearchEngineService@4068f746
Test: test testAll(com.apress.isf.spring.test.MyDocumentsTest) produced standard out/err: 2014-04-22 21:47:27,855 DEBUG [Test worker] Document DAO set: com.apress.isf.spring.data.DocumentRepository@4ad88414
Test: test testAll(com.apress.isf.spring.test.MyDocumentsTest) produced standard out/err: 2014-04-22 21:47:27,857 DEBUG [Test worker] Start <findByType> Params: Type Definition:
Test: test testAll(com.apress.isf.spring.test.MyDocumentsTest) produced standard out/err: Name: WEB
Test: test testAll(com.apress.isf.spring.test.MyDocumentsTest) produced standard out/err: Description: Web Link
Test: test testAll(com.apress.isf.spring.test.MyDocumentsTest) produced standard out/err: Extension: .url
Test: test testAll(com.apress.isf.spring.test.MyDocumentsTest) produced standard out/err: 2014-04-22 21:47:27,857 DEBUG [Test worker] Start <listAll> Params:
Test: test testAll(com.apress.isf.spring.test.MyDocumentsTest) produced standard out/err: 2014-04-22 21:47:27,857 DEBUG [Test worker] Start <getAll> Params:
Test: test testAll(com.apress.isf.spring.test.MyDocumentsTest) produced standard out/err: 2014-04-22 21:47:27,857 DEBUG [Test worker] End <getAll> Result:[Lcom.apress.isf.java.model.Document;@8117683
Test: test testAll(com.apress.isf.spring.test.MyDocumentsTest) produced standard out/err: 2014-04-22 21:47:27,857 DEBUG [Test worker] End <listAll> Result: [com.apress.isf.java.model.Document@4fdbef0c, com.apress.isf.java.model.Document@20bde8a7, com.apress.isf.java.model.Document@13f53cbc, com.apress.isf.java.model.Document@496664e0]
Test: test testAll(com.apress.isf.spring.test.MyDocumentsTest) produced standard out/err: 2014-04-22 21:47:27,857 DEBUG [Test worker] End <findByType> Result: [com.apress.isf.java.model.Document@496664e0] Test: test testAll(com.apress.isf.spring.test.MyDocumentsTest) produced standard out/err: 2014-04-22 21:47:27,857 DEBUG [Test worker] Start <listAll> Params: Test: test testAll(com.apress.isf.spring.test.MyDocumentsTest) produced standard out/err: 2014-04-22 21:47:27,857 DEBUG [Test worker] Start <getAll> Params:
Test: test testAll(com.apress.isf.spring.test.MyDocumentsTest) produced standard out/err: 2014-04-22 21:47:27,857 DEBUG [Test worker] End <getAll> Result:[Lcom.apress.isf.java.model.Document;@5728210a
Test: test testAll(com.apress.isf.spring.test.MyDocumentsTest) produced standard out/err: 2014-04-22 21:47:27,857 DEBUG [Test worker] End <listAll> Result: [com.apress.isf.java.model.Document@4fdbef0c, com.apress.isf.java.model.Document@20bde8a7, com.apress.isf.java.model.Document@13f53cbc, com.apress.isf.java.model.Document@496664e0]
com.apress.isf.spring.test.MyDocumentsTest > testAll PASSED