Forum Discussion

jbattaglia's avatar
jbattaglia
Occasional Contributor
3 years ago

Java based UI automation framework integrating with ReadyAPI SOAPUI

looking to integrate our Java based UI automation framework so we can call existing ReadyAPI->SOAPUI Pro test scripts.

have experimented with the TestRunner comman line and have also tried with available SoapUIProTestCaseRunner java class Integration With Java Applications | ReadyAPI Documentation (smartbear.com).

so far no luck.

has anyone successfully done this and can share pertinent info?

thanks

  • groovyguy's avatar
    groovyguy
    Community Hero

    I've had some luck working with ReadyAPI installed and licensed on Jenkins, using the test runner command line and a JUnit Report parser plugin. Is that what you mean? And when you say "so far no luck" what has happened or hasn't worked??

    • jbattaglia's avatar
      jbattaglia
      Occasional Contributor

      sorry for the delay, here are the messages I get.


      [INFO ] 2022-05-24 08:25:27.499 Cmd Demo - Set project path as "FunctionalTest" for TestRunner
      P[INFO ] 2022-05-24 08:25:27.593 Cmd Demo - Set environment as "Dev2.dev" for TestRunner
      P[INFO ] 2022-05-24 08:25:27.639 Cmd Demo - Set test suite as "EasementEdb" for TestRunner
      P[INFO ] 2022-05-24 08:25:27.687 Cmd Demo - Run the TestRunner command
      - No base packages specified - no classpath scanning will be done
      F[INFO ] 2022-05-24 08:25:28.532 Driver - Quitting driver Failed Step: Run the TestRunner command
      Specification: specs\utils\CmdDemo.spec:12
      Error Message: java.lang.NoSuchMethodError: 'java.lang.Object com.google.inject.internal.Errors.checkNotNull(java.lang.Object, java.lang.String)'
      Stacktrace:
      com.google.inject.internal.RealMultibinder.<init>(RealMultibinder.java:88)
      com.google.inject.internal.RealMultibinder.newRealSetBinder(RealMultibinder.java:56)
      com.google.inject.multibindings.Multibinder.newSetBinder(Multibinder.java:136)
      com.google.inject.multibindings.Multibinder.newSetBinder(Multibinder.java:99)
      com.netflix.governator.guice.BootstrapBinder.<init>(BootstrapBinder.java:69)
      com.netflix.governator.guice.InternalBootstrapModule.configure(InternalBootstrapModule.java:90)
      com.google.inject.AbstractModule.configure(AbstractModule.java:59)
      com.google.inject.spi.Elements$RecordingBinder.install(Elements.java:223)
      com.google.inject.spi.Elements.getElements(Elements.java:101)
      com.google.inject.internal.InjectorShell$Builder.build(InjectorShell.java:138)
      com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:116)
      com.google.inject.InjectorBuilder.build(InjectorBuilder.java:100)
      com.google.inject.Guice.createInjector(Guice.java:95)
      com.google.inject.Guice.createInjector(Guice.java:83)
      com.netflix.governator.guice.LifecycleInjector.<init>(LifecycleInjector.java:437)
      com.netflix.governator.guice.LifecycleInjectorBuilderImpl.build(LifecycleInjectorBuilderImpl.java:313)
      com.smartbear.ready.cmd.runner.AbstractSoapUIRunner.a(AbstractSoapUIRunner.java:320)
      com.smartbear.ready.cmd.runner.AbstractSoapUIRunner.initAfterPropertiesSet(AbstractSoapUIRunner.java:141)
      com.smartbear.ready.cmd.runner.AbstractSoapUIRunner.run(AbstractSoapUIRunner.java:291)
      com.smartbear.ready.cmd.runner.AbstractSoapUIRunner.runFromCommandLine(AbstractSoapUIRunner.java:181)
      gov.usda.nrcs.shared.POJOs.ReadyAPITestRunner.runTestRunner(ReadyAPITestRunner.java:38)
      gov.usda.nrcs.shared.stepdefinitions.ReadyAPITestRunnerDefs.runTestRunner(ReadyAPITestRunnerDefs.java:32)
      java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
      java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      java.base/java.lang.reflect.Method.invoke(Method.java:564)
      com.thoughtworks.gauge.execution.MethodExecutor.execute(MethodExecutor.java:28)
      com.thoughtworks.gauge.execution.StepExecutionStage.executeStepMethod(StepExecutionStage.java:66)
      com.thoughtworks.gauge.execution.StepExecutionStage.executeStep(StepExecutionStage.java:59)
      com.thoughtworks.gauge.execution.StepExecutionStage.execute(StepExecutionStage.java:41)
      com.thoughtworks.gauge.execution.AbstractExecutionStage.executeNext(AbstractExecutionStage.java:14)
      com.thoughtworks.gauge.execution.HookExecutionStage.execute(HookExecutionStage.java:33)
      com.thoughtworks.gauge.execution.ExecutionPipeline.start(ExecutionPipeline.java:19)
      com.thoughtworks.gauge.processor.ExecuteStepProcessor.process(ExecuteStepProcessor.java:44)
      com.thoughtworks.gauge.RunnerServiceHandler.lambda$executeStep$7(RunnerServiceHandler.java:166)
      java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
      java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
      java.base/java.lang.Thread.run(Thread.java:832)