在groovy类中使用logger for soapui

时间:2017-02-02 23:49:25

标签: logging groovy log4j soapui

我在soapui(opensource)中创建了以下groovy脚本。

import org.apache.log4j.Logger
class Test{

    static String hello(){
        def mylog = Logger.getLogger("")
        mylog.info("Hello")
        return mylog
    }
}

log.info Test.hello()
log.info loge here

它不会检索任何错误消息并运行,但它不会检索信息日志(mylog.info)中的字符串,这是我正在寻找的。

最初我以为' log.info'会使用它,这是使用sopaui groovy脚本时的println等价物。但是因为我试图从课堂上写日志,所以课堂上并不知道“log.info”。默认情况下,这就是为什么我指定使用' log4j.Logger',但仍然不确定我缺少什么。

在课外我放了两个log.info来打印两个记录器对象的值(第一个是我的groovy类中的一个,第二个是来自soapui的那个),这就是我得到的:

Thu Feb 02 17:10:56 CST 2017:INFO:org.apache.log4j.Logger@24e6b930            
Thu Feb 02 17:10:56 CST 2017:INFO:org.apache.log4j.Logger@6ca396be

他们看起来一样,除了@之后的内容。不知道这些数字代表什么,如果这是我的班级没有写信息日志的部分原因。

如果有人可以帮助我,我会很感激。

1 个答案:

答案 0 :(得分:2)

看起来你遇到了琐碎的问题。

由于log范围内已有Groovy Script变量,您只需将其传递给您的方法,如下所示:

Groovy脚本

class MyTest{
    static String testLogging(log){
        log.info("Hello")
    }
}
MyTest.testLogging(log)

enter image description here