2010-01-08 60 views
2

我想編寫一個採用域對象並生成KML的gsp文件。我想驗證具體元素是否存在取決於域對象的內容。我將如何TDD這個gsp文件?我正在考慮編寫一個測試,用域對象調用渲染方法,但不知道如何從控制器外部調用渲染方法。還有另一種呈現gsp頁面的方法嗎?TDD grails視圖

回答

2

我在http://grails.org/doc/latest/搜索「Grails框架參考文檔」後找到了答案。以下是允許GSP的TDD的代碼片段。此測試爲集成測試

class MyGspTest extends GroovyPagesTestCase { 

    ... 

    void testGsp() { 
     //Open file containing GSP under test 
     def myGspFile = new File("grails-app/views/myView/myGsp.gsp") 
     assertNotNull(myGspFile) 
     def template = myGspFile.text 

     //Populate domain object with relevent test data 
     MyDomainObject obj = new MyDomainObject() 
     ... 

     //Obtain result of GSP page 
     def result = applyTemplate(template, [myDomainObject: obj]) 

     //Verify results contain expected output 
     ... 
    } 

}