Grails - “无法从单元测试中获取null对象上的属性'grails'”

时间:2011-10-08 00:56:02

标签: unit-testing grails service controller installation

我收到以下错误...

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的单元测试setUp()时,即使它被缩减为:

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

我浏览过网络但一无所获。 我不知道它会来自哪里。 任何帮助都极大地促成了:)

1 个答案:

答案 0 :(得分:0)

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

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

调用Config.groovy的grails.serverURL属性。