Tuesday 15 June 2010

java - Error using Rest Assured RequestSpecification with testng -



java - Error using Rest Assured RequestSpecification with testng -

i using rest assured version 2.3.4 testng testing rest apis , getting below error

java.lang.incompatibleclasschangeerror: number of constructors during runtime , compile time com.jayway.restassured.internal.requestspecificationimpl$encodingtarget not match. expected -1 got 2 @ groovy.lang.metaclassimpl.selectconstructorandtransformarguments(metaclassimpl.java:1400) @ org.codehaus.groovy.runtime.scriptbytecodeadapter.selectconstructorandtransformarguments(scriptbytecodeadapter.java:234) @ com.jayway.restassured.internal.requestspecificationimpl$encodingtarget.$init(requestspecificationimpl.groovy) @ sun.reflect.nativemethodaccessorimpl.invoke0(native method) @ sun.reflect.nativemethodaccessorimpl.invoke(nativemethodaccessorimpl.java:57) @ sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl.java:43) @ java.lang.reflect.method.invoke(method.java:606) @ org.codehaus.groovy.reflection.cachedmethod.invoke(cachedmethod.java:90) @ groovy.lang.metamethod.domethodinvoke(metamethod.java:233) @ org.codehaus.groovy.runtime.callsite.staticmetamethodsite.invoke(staticmetamethodsite.java:43) @ org.codehaus.groovy.runtime.callsite.staticmetamethodsite.callstatic(staticmetamethodsite.java:99) @ org.codehaus.groovy.runtime.callsite.callsitearray.defaultcallstatic(callsitearray.java:50) @ org.codehaus.groovy.runtime.callsite.abstractcallsite.callstatic(abstractcallsite.java:157) @ org.codehaus.groovy.runtime.callsite.abstractcallsite.callstatic(abstractcallsite.java:169) @ com.jayway.restassured.internal.requestspecificationimpl$encodingtarget.<clinit>(requestspecificationimpl.groovy) @ sun.misc.unsafe.ensureclassinitialized(native method) @ sun.reflect.unsafefieldaccessorfactory.newfieldaccessor(unsafefieldaccessorfactory.java:43) @ sun.reflect.reflectionfactory.newfieldaccessor(reflectionfactory.java:140) @ java.lang.reflect.field.acquirefieldaccessor(field.java:1057) @ java.lang.reflect.field.getfieldaccessor(field.java:1038) @ java.lang.reflect.field.get(field.java:379) @ org.codehaus.groovy.reflection.cachedfield.getproperty(cachedfield.java:51) @ groovy.lang.metaclassimpl.getproperty(metaclassimpl.java:1552) @ groovy.lang.metaclassimpl.getproperty(metaclassimpl.java:3308) @ org.codehaus.groovy.runtime.callsite.classmetaclassgetpropertysite.getproperty(classmetaclassgetpropertysite.java:48) @ org.codehaus.groovy.runtime.callsite.abstractcallsite.callgetproperty(abstractcallsite.java:227) @ com.jayway.restassured.internal.requestspecificationimpl$_applypathparamsandencodepath_closure24.docall(requestspecificationimpl.groovy:1438) @ sun.reflect.nativemethodaccessorimpl.invoke0(native method) @ sun.reflect.nativemethodaccessorimpl.invoke(nativemethodaccessorimpl.java:57) @ sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl.java:43) @ java.lang.reflect.method.invoke(method.java:606) @ org.codehaus.groovy.reflection.cachedmethod.invoke(cachedmethod.java:90) @ groovy.lang.metamethod.domethodinvoke(metamethod.java:233) @ org.codehaus.groovy.runtime.metaclass.closuremetaclass.invokemethod(closuremetaclass.java:272) @ groovy.lang.metaclassimpl.invokemethod(metaclassimpl.java:885) @ groovy.lang.closure.call(closure.java:405) @ org.codehaus.groovy.runtime.defaultgroovymethods.inject(defaultgroovymethods.java:2983) @ org.codehaus.groovy.runtime.dgm$328.invoke(unknown source) @ org.codehaus.groovy.runtime.callsite.pojometamethodsite$pojometamethodsitenounwrapnocoerce.invoke(pojometamethodsite.java:271) @ org.codehaus.groovy.runtime.callsite.pojometamethodsite.call(pojometamethodsite.java:53) @ org.codehaus.groovy.runtime.callsite.callsitearray.defaultcall(callsitearray.java:42) @ org.codehaus.groovy.runtime.callsite.abstractcallsite.call(abstractcallsite.java:108) @ org.codehaus.groovy.runtime.callsite.abstractcallsite.call(abstractcallsite.java:120) @ com.jayway.restassured.internal.requestspecificationimpl.applypathparamsandencodepath(requestspecificationimpl.groovy:1405) @ com.jayway.restassured.internal.requestspecificationimpl.this$2$applypathparamsandencodepath(requestspecificationimpl.groovy) @ sun.reflect.nativemethodaccessorimpl.invoke0(native method) @ sun.reflect.nativemethodaccessorimpl.invoke(nativemethodaccessorimpl.java:57) @ sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl.java:43) @ java.lang.reflect.method.invoke(method.java:606) @ org.codehaus.groovy.reflection.cachedmethod.invoke(cachedmethod.java:90) @ groovy.lang.metamethod.domethodinvoke(metamethod.java:233) @ groovy.lang.metaclassimpl.invokemethod(metaclassimpl.java:1055) @ groovy.lang.metaclassimpl.invokemethod(metaclassimpl.java:885) @ groovy.lang.metaclassimpl.invokemethod(metaclassimpl.java:705) @ com.jayway.restassured.internal.requestspecificationimpl.invokemethod(requestspecificationimpl.groovy) @ org.codehaus.groovy.runtime.callsite.pogointerceptablesite.call(pogointerceptablesite.java:45) @ org.codehaus.groovy.runtime.callsite.pogointerceptablesite.callcurrent(pogointerceptablesite.java:55) @ org.codehaus.groovy.runtime.callsite.callsitearray.defaultcallcurrent(callsitearray.java:46) @ org.codehaus.groovy.runtime.callsite.abstractcallsite.callcurrent(abstractcallsite.java:133) @ org.codehaus.groovy.runtime.callsite.abstractcallsite.callcurrent(abstractcallsite.java:145) @ com.jayway.restassured.internal.requestspecificationimpl.applypathparamsandsendrequest(requestspecificationimpl.groovy:1372) @ com.jayway.restassured.internal.requestspecificationimpl.this$2$applypathparamsandsendrequest(requestspecificationimpl.groovy) @ sun.reflect.nativemethodaccessorimpl.invoke0(native method) @ sun.reflect.nativemethodaccessorimpl.invoke(nativemethodaccessorimpl.java:57) @ sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl.java:43) @ java.lang.reflect.method.invoke(method.java:606) @ org.codehaus.groovy.reflection.cachedmethod.invoke(cachedmethod.java:90) @ groovy.lang.metamethod.domethodinvoke(metamethod.java:233) @ groovy.lang.metaclassimpl.invokemethod(metaclassimpl.java:1055) @ groovy.lang.metaclassimpl.invokemethod(metaclassimpl.java:885) @ groovy.lang.metaclassimpl.invokemethod(metaclassimpl.java:705) @ com.jayway.restassured.internal.requestspecificationimpl.invokemethod(requestspecificationimpl.groovy) @ org.codehaus.groovy.runtime.callsite.pogointerceptablesite.call(pogointerceptablesite.java:45) @ org.codehaus.groovy.runtime.callsite.pogointerceptablesite.callcurrent(pogointerceptablesite.java:55) @ org.codehaus.groovy.runtime.callsite.callsitearray.defaultcallcurrent(callsitearray.java:46) @ org.codehaus.groovy.runtime.callsite.abstractcallsite.callcurrent(abstractcallsite.java:133) @ org.codehaus.groovy.runtime.callsite.abstractcallsite.callcurrent(abstractcallsite.java:149) @ com.jayway.restassured.internal.requestspecificationimpl.post(requestspecificationimpl.groovy:155) @ com.jayway.restassured.internal.requestspecificationimpl.post(requestspecificationimpl.groovy) @ com.alu.mdf.test.common.restcommonoperations.restpostoperation(restcommonoperations.java:77) @ com.alu.mdf.test.common.customers.customersbaseoperations(customers.java:52) @ com.alu.mdf.testsuite.sure.rest.testcustomerresource1.prerequisites(testcustomerresource1.java:52) @ sun.reflect.nativemethodaccessorimpl.invoke0(native method) @ sun.reflect.nativemethodaccessorimpl.invoke(nativemethodaccessorimpl.java:57) @ sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl.java:43) @ java.lang.reflect.method.invoke(method.java:606) @ org.testng.internal.methodinvocationhelper.invokemethod(methodinvocationhelper.java:84) @ org.testng.internal.invoker.invokemethod(invoker.java:714) @ org.testng.internal.invoker.invoketestmethod(invoker.java:901) @ org.testng.internal.invoker.invoketestmethods(invoker.java:1231) @ org.testng.internal.testmethodworker.invoketestmethods(testmethodworker.java:127) @ org.testng.internal.testmethodworker.run(testmethodworker.java:111) @ org.testng.testrunner.privaterun(testrunner.java:767) @ org.testng.testrunner.run(testrunner.java:617) @ org.testng.suiterunner.runtest(suiterunner.java:334) @ org.testng.suiterunner.runsequentially(suiterunner.java:329) @ org.testng.suiterunner.privaterun(suiterunner.java:291) @ org.testng.suiterunner.run(suiterunner.java:240) @ org.testng.suiterunnerworker.runsuite(suiterunnerworker.java:52) @ org.testng.suiterunnerworker.run(suiterunnerworker.java:86) @ org.testng.testng.runsuitessequentially(testng.java:1224) @ org.testng.testng.runsuiteslocally(testng.java:1149) @ org.testng.testng.run(testng.java:1057) @ org.testng.remote.remotetestng.run(remotetestng.java:111) @ org.testng.remote.remotetestng.initandrun(remotetestng.java:204) @ org.testng.remote.remotetestng.main(remotetestng.java:175)

and method looks below,

public response restpostoperation(string resource,string payload) throws ioexception{ string methodname="restpostoperation"; log.info("executing method {} in class {} begins",methodname,classname); try{ requestspecbuilder builder = new requestspecbuilder(); //setting content type application/json or application/xml builder.setcontenttype("application/xml; charset=utf-8"); //setting request body builder.setbody(payload); requestspecification requestspec = builder.build(); configurepreresourcepath(); response=given().spec(requestspec).when().post(resource); log.info("executing method {} in class {} ends",methodname,classname); homecoming response; }catch(exception ex){ system.out.println("request can not processed.an exception has been occured "+ex); throw ex; } }

i not able figure out why getting this.can 1 help me,if come across similar problem

seems may have wrong version of groovy in class path. seek set rest assured dependency first library in maven/gradle if utilize of them.

java testng rest-assured

No comments:

Post a Comment