cancel
Showing results for 
Search instead for 
Did you mean: 

Invoking the ready api in the slave host using jenkins over SSH

SOLVED
singam
Visitor

Invoking the ready api in the slave host using jenkins over SSH

I have jenkins master running on the linux host and ssh agent  running on the Windows host,

I installed the  "ready api:run functiona test " plugin on the Jenkins master and configured the ssh agent host.. 

 

Trying to invoke the ready api application which exists on the windows slave host.

in the following screen there is no option to provide the agent host ip or host name.

 

singam_0-1615928915451.png

 

Getting the following exception in jenkins while building it:

Failed to load testrunner file [C:\Program Files\SmartBear\ReadyAPI-3.6.0\bin\testrunner.bat]
hudson.AbortException: Could not start ReadyAPI functional testing.
	at com.smartbear.ready.jenkins.JenkinsSoapUIProTestRunner.perform(JenkinsSoapUIProTestRunner.java:129)
	at hudson.tasks.BuildStepCompatibilityLayer.perform(BuildStepCompatibilityLayer.java:78)
	at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
	at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:741)
	at hudson.model.Build$BuildExecution.build(Build.java:206)
	at hudson.model.Build$BuildExecution.doRun(Build.java:163)
	at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:504)

I do have the above path on the slave host. 

i am not sure if the above plugin is limited only to run the test runner on the localhost(jenkis master host)?

please let me know how i can invoke the ready api on the remote host(agent host) using ssh ,i can not use http or https for webstart.

Thanks

Giri

.

 

1 ACCEPTED SOLUTION

Accepted Solutions
MarcusJ
Moderator

Re: Invoking the ready api in the slave host using jenkins over SSH

Hi,

 

You can run testrunner using ssh if you have ssh-agent running on the Jenkins machine you want to run testrunner on and testrunner is installed there.  You can use a ssh command like the below for a remote start of tesrunner.

 

ssh username@hostname '(/ReadyAPI/bin/testrunner.sh testrunner_arguments)'

 

If you have a ssh key you can use the -i argument with the ssh command to specify the ssh key.  The Jenkins job can be a shell script command to do this.

 

 

Regards,

Marcus James

SmartBear Support



Limited time: Gain insights – and win prizes – with our event “Inside Zephyr”! Runs May 17-28

View solution in original post

2 REPLIES 2
sonya_m
Community Manager

Re: Invoking the ready api in the slave host using jenkins over SSH

Thanks for the question! Let's see if the Community has ideas.

 

@HimanshuTayal @richie @ChrisAdams  could you take a look?


Sonya Mihaljova
Community and Education Specialist


Limited time: Gain insights – and win prizes – with our event “Inside Zephyr”! Runs May 17-28
MarcusJ
Moderator

Re: Invoking the ready api in the slave host using jenkins over SSH

Hi,

 

You can run testrunner using ssh if you have ssh-agent running on the Jenkins machine you want to run testrunner on and testrunner is installed there.  You can use a ssh command like the below for a remote start of tesrunner.

 

ssh username@hostname '(/ReadyAPI/bin/testrunner.sh testrunner_arguments)'

 

If you have a ssh key you can use the -i argument with the ssh command to specify the ssh key.  The Jenkins job can be a shell script command to do this.

 

 

Regards,

Marcus James

SmartBear Support



Limited time: Gain insights – and win prizes – with our event “Inside Zephyr”! Runs May 17-28

View solution in original post

New Here?
Join us and watch the welcome video:
Announcements
Top Kudoed Authors