How to clear Log Ouput via groovy
I would like to clear the "log Output" before running the test cases.
Reason:- I would not like to see the output of the previous run as it creates confusion.
while i have seen in the forum the below command, but it does not work.
com.eviware.soapui.SoapUI.logMonitor.getLogArea("script log").clear()
It does not clear the previous log output. I have put this as both first and last line of my groovy script but it does not clear the script log window.
Below code actually clears the "log-output"
Ready aPI 2.1
import com.eviware.soapui.SoapUI
log.info("test")
//Writing to the log is executed in the separate thread, so it is need to wait some time to get all notifications.
sleep(1000)
def teststep = context.getCurrentStep()
def tesStepPanel = SoapUI.getDesktop().getDesktopPanel(teststep)
if(tesStepPanel != null) {
tesStepPanel.getComponent(2).getComponent(0).getComponent(1).getComponent(2).getComponent(0).clear()
}
Note that in ReadyAPI 2.2 you will need to use the following script:
import com.smartbear.ready.core.ApplicationEnvironment
log.info("test")
//Writing to the log is executed in the separate thread, so it is need to wait some time to get all notifications.
sleep(1000)
def teststep = context.getCurrentStep()
def tesStepPanel = ApplicationEnvironment.getDesktop().getDesktopPanel(teststep)
if(tesStepPanel != null) {
tesStepPanel.getComponent(3).getComponent(0).getComponent(1).getComponent(2).getComponent(0).clear()
}
Don't forget to kudos/accept this as a solution