2011-10-08 114 views
0

“空对象无法获得属性'Grails的”我得到以下错误...Grails的 - 从单元测试

Cannot get property 'grails' on null object 
java.lang.NullPointerException: Cannot get property 'grails' on null object 
    at pcc.EmailSharerController.<init>(EmailSharerController.groovy) 
    at grails.test.MvcUnitTestCase.newInstance(MvcUnitTestCase.groovy:102) 
    at grails.test.ControllerUnitTestCase.super$6$newInstance(ControllerUnitTestCase.groovy) 
    at grails.test.ControllerUnitTestCase.newInstance(ControllerUnitTestCase.groovy:112) 
    at grails.test.ControllerUnitTestCase.setUp(ControllerUnitTestCase.groovy:55) 
    at pcc.EmailSharerControllerTests.super$7$setUp(EmailSharerControllerTests.groovy) 
    at pcc.EmailSharerControllerTests.setUp(EmailSharerControllerTests.groovy:12) 

...当我的我的EmailSharerController运行单元测试设置()即使是这样:

protected void setUp() { 
     super.setUp() 
} 

我浏览了网页,发现什么都没有。 我不知道它会来自哪里。 任何帮助大大apreciated :)

+1

这将有助于看到你的控制器。看起来你可能引用了单元测试期间没有连接的某个属性。 –

回答

0

问题是,Grails不支持单元测试中的ConfigurationHolder对象。 它可以解决这样说:

mockConfig(""" 
     grails { 
      serverURL = 'my domain name' 
     } 
    """) 

调用Config.groovy中的例如grails.serverURL财产。