2011-01-25 4 views
2

내가 말하는 기사를 읽고Grails는 구운에서 테스트

테스트 지원 구운-의 : 테스트 Grails의의 우선 순위와 일류 시민 입니다. Grails는 테스트를 촉진합니다. 은 낮은 수준의 단위 테스트에서 상위 수준의 기능 테스트까지 테스트를 더 편리하게 수행 할 수있는 유틸리티를 제공합니다 ( ). 에서 Grails는 특정 테스트 프레임 워크 과 결혼하지 않았습니다. 당신은 Canoo 등 모든 테스트 프레임 워크 사용 JUnit을, 스팍, EasyB, 게브, 셀레늄은 (Grails의 테스트 인프라 테스트 프레임 워크를 후크 플러그인을 작성하여) Grails의 작업을 할 수 있습니다.

다른 Java EE 프레임 워크와 마찬가지로 Grails를 테스트 할 수 있습니까? 그렇습니다. Grails가 jUnit과 통합되어있는 것처럼 텍스트 블록에 아무 것도 말하지 않거나 Grails 테스트에 특별한 것이 있습니까?

편집 :

어떻게이 SeamTest 비교합니까?

답변

5

Grails는 이미 단위 테스트 및 통합 테스트를위한 폴더가 포함 된 폴더 구조를 통해 테스트를 지원하며 테스트 명령 작성을 도와줍니다. 예를 들어 도메인 클래스 나 컨트롤러를 만들면 자동으로 테스트 스텁이 만들어집니다. 또한 모든 테스트를 실행하거나 유닛/통합 테스트 만 실행하거나 개별 테스트를 실행하는 명령이 있습니다. 이러한 테스트는 테스트 폴더에 자동으로 보고서를 작성합니다.

테스트를 지원하는 많은 플러그인을 찾을 수 있습니다. HtmlUnit을 사용하여 실제 요청을 테스트하는 우수한 기능 테스트 플러그인이 있습니다. Selenium 플러그인도 있습니다.

Grails에 대한 전반적인 경험은 매우 긍정적이었으며 프레임 워크로 적극 권장합니다.

이 정보가 도움이되기를 바랍니다.

+0

Maven처럼?나는 아주 훌륭한 프레임 워크를 원한다면 Grails를 선택할 수있는 귀하의 게시물 (공격이 없음)에서 놀라운 것을 볼 수 없습니다. SeamTest와 같은 뭔가를 추가로 기대하고있었습니다. – IAdapter

+2

걱정하지 마시고, 아무도 가져 가지 않았습니다 :-) 나는 grails와 maven 사이에 많은 공통점을 발견합니다. 테스트 가능성 측면에서 여분의 스터 빙이 있지만 Maven에도 쉽게 추가 할 수 있습니다. grails의 진정한 힘은 테스트 가능성이 아니라 Groovy의 간결한 능력, Groovy를 통한 동적 언어 지원 및 Rails와 같은 스캐 폴딩 및 일반적인 접근법에 있다고 할 수 있습니다. –

4

Matthew가 지적했듯이 테스트 인프라는 모두 설정되었습니다. 디렉토리 레이아웃이 정의되고 테스트는 grails 스크립트를 통해 실행될 수 있습니다.

전반적으로 grails와 SeamTest의 테스트 환경은 크게 다르지 않습니다. 그들은 둘 다 단위 테스트와 데이터베이스 전체를 가지고있는 통합 테스트를 가지고 있습니다. 차이점은 대부분 자바와 그루비의 차이입니다.

SeamTest가 TestNG 위에 레이어를 제공하는 것처럼 grails도 유사한 지원을 제공하는 JUnit 위에 레이어를 가지고 있습니다. grails.test.GrailsUnitTestCasegroovy.util.GroovyTestCase은 어떻게 비교할 수 있는지 살펴 보는 좋은 출발점입니다.

내 의견으로는, grails가 실제로 눈에 띄는 부분은 조롱 거리에 있습니다. Groovy를 사용하여 매우 유연한 조롱을 제공합니다. 특히 모의 클래스를 클래스와 객체에 직접 적용하여 동적으로 메소드를 재정의 할 수 있으므로 모의 클래스를 만들 필요가 없습니다. 프레임 워크는 전체 ORM 계층 조롱을위한 바로 가기를 제공하여 데이터베이스의 오버 헤드없이 더 높은 수준의 구성 요소를 쉽게 테스트 할 수 있습니다.

구체적인 예를 보려면 manual's chapter on testing을 살펴보십시오.

관련 문제