Forum Discussion

alicja's avatar
alicja
Occasional Visitor
8 years ago

NullPointerException error

Hi,

 

I wrote groovy script in soapui changing date on tomorrows date in specific nodes. I wanted to load that script using Setup Script on TestSuites level but error occured:

 java.lang.NullPointerException cannot get property 'testSuite' on null object

 

How to solve it? 

Here's my groovy script:

import com.eviware.soapui.impl.wsdl.teststeps.*

def ui = com.eviware.soapui.support.UISupport;
def project = context.testCase.testSuite.project

def testSuite = project.getTestSuiteAt(0)
def testCase = testSuite.getTestCaseAt(0)

//set date  
def today = new Date()
def dd = today.getDate() + 1
def mm = today.getMonth() + 1  //January is 0!
def yyyy = 1900 + today.getYear()

if (dd < 10)   dd = '0' + dd
if (mm < 10)  mm = '0' + mm

tomorrowsDateAndTime = yyyy + '-' + mm + '-' + dd  + "+01:00"

//xml paths to change date
def somePathToChangeDate = "//somePathToChangeDate"
def somePathToChangeDate2 = "//somePathToChangeDate2"

def stepList = testCase.getTestStepList() //list of all tests in package

for (singleTest in stepList) {
    log.info("          " + singleTest.getName())
    def testName = singleTest.getName()
    testSuite.setPropertyValue("testName",  testName)
    def testStep = testCase.getTestStepByName(testName)
    def testStepContext = new com.eviware.soapui.impl.wsdl.testcase.WsdlTestRunContext(testStep);
    def groovyUtils = new com.eviware.soapui.support.GroovyUtils(testStepContext) 
    def inputHolder = testName + "#Request"
    def holderRawReq = groovyUtils.getXmlHolder(inputHolder)    

    holderRawReq[somePathToChangeDate] = tomorrowsDateAndTime
    holderRawReq[somePathToChangeDate2] = tomorrowsDateAndTime

    holderRawReq.updateProperty()
}
log.info "          Dates are updated"
No RepliesBe the first to reply