Вход в Grails во время интеграционного тестирования - PullRequest
5 голосов
/ 03 января 2011

Я часами пытался отобразить сообщения регистрации (в файл или на консоль) при выполнении интеграционных тестов.Я предположил, что мог бы использовать следующий код для добавления сообщения журнала:

log.debug "Some useful information here"

Я закомментировал следующую строку в _GrailsWar.groovy:

target(startLogging:"Bootstraps logging") {
// do nothing, overrides default behaviour so that logging doesn't kick in    
}

, как предложено здесь 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} - %m%n')
        file name:'file', file:'C:/Users/Christopher/Documents/NetBeansProjects/TestProject/smyh.log', append: false
        console name:'stdout'
    }

    error  'org.codehaus.groovy.grails.web.servlet',  //  controllers
           'org.codehaus.groovy.grails.web.pages', //  GSP
           'org.codehaus.groovy.grails.web.sitemesh', //  layouts
           'org.codehaus.groovy.grails.web.mapping.filter', // URL mapping
           'org.codehaus.groovy.grails.web.mapping', // URL mapping
           'org.codehaus.groovy.grails.commons', // core / classloading
           'org.codehaus.groovy.grails.plugins', // plugins
           'org.codehaus.groovy.grails.orm.hibernate', // hibernate integration
           'org.springframework',
           'org.hibernate',
           'net.sf.ehcache.hibernate'

    warn   'org.mortbay.log'

    debug 'grails.app'

    info 'grails.app'

    root {
      // change the root logger to my tomcatLog file
      error 'file', stdout
      info 'file', stdout
      warn 'file', stdout
      debug 'file', stdout
      additivity = true
    }

}

Кто-нибудь знает, почему я не вижу свои сообщения журнала во время интеграционных тестов?

Большое спасибоза ваше время.

Ответы [ 2 ]

6 голосов
/ 04 января 2011

Я наконец нашел решение своего собственного вопроса.Для того, чтобы сделать запись в интеграционных тестах, я добавил следующую строку вверху:

import org.apache.commons.logging.LogFactory

Затем в классе я добавил следующее:

def log = LogFactory.getLog(getClass()) 

Это было из: http://grails.1312388.n4.nabble.com/Problems-with-Logging-td1360669.html

Тогда я могу заняться регистрацией, например

log.debug('*** It works! ***');
0 голосов
/ 03 января 2011

Взгляните на эту недавнюю ветку в списке рассылки пользователя.
Возможно, у вас такая же проблема ?

Редактировать: ну, этовероятно, что вы уже сделали, извините.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...