2017-02-02 54 views
0

我在soapui(opensource)中創建了以下groovy腳本。在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'會使它成爲println的等同物,當使用sopaui groovy腳本時。但是由於我正在嘗試從類中編寫日誌,因此默認情況下類不知道「log.info」,這就是爲什麼我指定使用'log4j.Logger',但仍然不確定丟失了什麼。

類外我放了兩個log.info同時打印記錄對象的值(第一個是從我的常規類中的一個,第二個,從一個soapUI的),這是我得到了什麼:

Thu Feb 02 17:10:56 CST 2017:INFO:[email protected]    
Thu Feb 02 17:10:56 CST 2017:INFO:[email protected] 

它們看起來是一樣的,除了@之後。不知道這些數字代表什麼,如果這是我的班級不寫信息日誌的原因的一部分。

如果有人可以幫助我,我將不勝感激。

+0

你想使用你的課上有'log'嗎? – Rao

+0

是的,我希望能夠打印不同的日誌,以便我可以跟蹤課程正在做什麼。 – onlyMoneyNotTalent

回答

1

看起來你遇到了一個微不足道的問題。

由於log變量在Groovy Script範圍已經上市,你只需要傳遞給你的方法,如下圖所示:

Groovy腳本

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

enter image description here