我在应用程序中使用spring security,并且必须为功能测试用例禁用spring security。
所以我在配置文件中设置springsecurity.active = false。
environments {
doNotCacheCompiledReportTemplates=false
development {
grails.plugins.springsecurity.active = false
grails.logging.jul.usebridge = false
doNotCacheCompiledReportTemplates=true
}
testAutomation {
grails.plugins.springsecurity.active = false
grails.logging.jul.usebridge = false
doNotCacheCompiledReportTemplates = false
grails.dbconsole.enabled = true
}
dev3 {
grails.plugins.springsecurity.active = false
grails.logging.jul.usebridge = true
}
rubyTest {
grails.plugins.springsecurity.active = false
grails.logging.jul.usebridge = true
}
}
并在SpringSecurityCoreGrailsPlugin.groovy中添加了打印语句
println "The Config Activity is: ${conf?.active}"
该值为“True”,但由于我在config.groovy中设置了属性,因此期望为“False”。
我缺少什么,为什么未读取config属性?
周围的任何建议,将不胜感激。
最佳答案
您的环境命名可能有问题。运行测试时,您应该看到有关选定环境“环境设置为__”的日志。在您的情况下,应为“环境设置为testAutomation”。要告诉grails在此环境中运行测试,请尝试使用以下命令运行测试:grails -Dgrails.env=testAutomation test-app
关于grails - 为Grails功能测试禁用 Spring 安全性吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20107826/