在执行集成测试时,我一直在努力争取显示日志消息(无论是文件还是控制台).我假设我可以使用以下代码添加日志消息:
log.debug "Some useful information here"
Run Code Online (Sandbox Code Playgroud)
我已注释掉以下内容_GrailsWar.groovy:
target(startLogging:"Bootstraps logging") {
// do nothing, overrides default behaviour so that logging doesn't kick in
}
Run Code Online (Sandbox Code Playgroud)
正如这里建议的那样http://jira.codehaus.org/browse/GRAILS-4470
log4j部分Config.groovy看起来像这样:
// log4j configuration
log4j = {
// Example of changing the log pattern for the default console
// appender:
//
appenders {
//console name:'stdout', layout:pattern(conversionPattern: '%c{2} %m%n
//console name: 'stdout', layout: pattern(conversionPattern: '%d{dd-MM-yyyy HH:mm:ss,SSS} %5p %c{1} - %m%n')
//file name: 'hibeFile', file: 'hibe.log', layout: pattern(conversionPattern: '%d{dd-MM-yyyy HH:mm:ss,SSS} %5p %c{1} - …Run Code Online (Sandbox Code Playgroud) 我有一个非常简单的Grails服务:
class UserService {
def returnHi() { return "Hi" }
}
Run Code Online (Sandbox Code Playgroud)
我正试图在集成测试中访问该服务,如下所示:
def testService() {
UserService userService
assertEquals( "Hi", userService.returnHi() )
}
Run Code Online (Sandbox Code Playgroud)
为什么我会失败:java.lang.NullPointerException:无法在null对象上调用方法returnHi()?
谢谢你的时间