繁体   English   中英

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

[英]Grails - “Cannot get property 'grails' on null object” from unit test

我收到以下错误...

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()  
}

我浏览了网络,却一无所获。 我没有任何猜测。 任何帮助大大赞赏:)

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

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

例如,调用Config.groovy的grails.serverURL属性。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM