Hello Community,
I tired to integrate TestComplete project with Jenkins, but somehow TestComplete won't launch when Jenkins started to build.
I was thinking maybe because "Silent' mode was passed as argument? If so, how do I modify it so it won't be silent mode.
My setup:
1. Jenkins slave running as service mode.
2. TestComplete 11
3. Jenkins console log is hanging at this screen:
14:30:08 [TestComplete] Found TestComplete/TestExecute installations: 14:30:08 Type: TC, Version: 11.31.2420.7, Path: "C:\Program Files\SmartBear\TestComplete 11\bin\TestComplete.exe" 14:30:08 [TestComplete] Selected TestComplete/TestExecute installation: 14:30:08 Type: TC, Version: 11.31.2420.7, Path: "C:\Program Files\SmartBear\TestComplete 11\bin\TestComplete.exe" 14:30:08 [TestComplete] [WARNING] The node is connected via Java Web Start (JNLP). In this mode, the "Run interactive user session" property of the TestComplete Test step is ignored. TestComplete (or TestExecute) will work in the current user session. 14:30:08 [TestComplete] Launching the test runner. 14:30:08 $ "C:\Program Files\SmartBear\TestComplete 11\bin\TestComplete.exe" "c:\jenkins\workspace\SmokeTest\SmokeTest.pjs" /run /SilentMode /ForceConversion /ns /exit "/ExportLog:c:\jenkins\workspace\SmokeTest\1808641.tclogx" "/ExportLog:c:\jenkins\workspace\1808641.htmlx" "/ErrorLog:c:\jenkins\workspace\1808641.txt" "/ExportLog:c:\jenkins\workspace\SmokeTest\1808641.mht" "/project: SmokeTest_Basic"
4. Jenkins configuration(See attachment)
Any help/suggestion would be helpful!
Thank you!
Solved! Go to Solution.
Support resolved the issue.
The Jenkins Service needs to run by Local account.
If you go out to a prompt and run this command manually, does it work?
C:\Program Files\SmartBear\TestComplete 11\bin\TestComplete.exe" "c:\jenkins\workspace\SmokeTest\SmokeTest.pjs" /run /SilentMode /ForceConversion /ns /exit "/ExportLog:c:\jenkins\workspace\SmokeTest\1808641.tclogx" "/ExportLog:c:\jenkins\workspace\1808641.htmlx" "/ErrorLog:c:\jenkins\workspace\1808641.txt" "/ExportLog:c:\jenkins\workspace\SmokeTest\1808641.mht" "/project: SmokeTest_Basic"
Hi Marsha,
Thank you for your help.
Yes, it worked if I typed the command manually. TestComplete launched, and then start doing UI tests.
I guess /SilentMode wasn't the issue.
Somehow when Jenkins passed that to slave, TestComplete won't launch, but I can see TestComplete process stated, but usage didn't move that much.
I see the Warning in the Jenkins log but I don't know what to do about that.
[WARNING] The node is connected via Java Web Start (JNLP). In this mode, the "Run interactive user session" property of the TestComplete Test step is ignored. TestComplete (or TestExecute) will work in the current user session.
The Run interactive user session is checked in your Settings but this disables it.
Have you been through these steps and checked everything?
https://support.smartbear.com/testcomplete/docs/working-with/integration/jenkins/running-tests.html
yes, I checked it, and it looks good to me.
Please see the screenshot below:
I also get project file from SVN. That part should be fine because TestComplete launched without issue when I manually paste the command to cmd.
But it would not launch when jenkins does it.
I researched the warning, and then apparently that warning is normal.
Few you can try to identify the issue,
I guess you will find some issues with above tries.
LinkedIn | CG-VAK Software | Bitbucket | shankarr.75@gmail.com
“You must expect great things from you, before you can do them”My setup:
1. Jenkins slave running as service mode.
2. TestComplete 11
3. Jenkins console log is hanging at this screen: - This is will be hangs up in the same line until the run completes. Once the run completed you will presented something like with below lines
[TestComplete] Test runner exit code: 2. [TestComplete] [WARNING] Errors occurred during the test execution. [TestComplete] Marking the build as UNSTABLE. [TestComplete] The test execution finished (Automation_Framework). Build step 'TestComplete Test' changed build result to UNSTABLE
LinkedIn | CG-VAK Software | Bitbucket | shankarr.75@gmail.com
“You must expect great things from you, before you can do them”Thank you for the suggestions.
Unfortunately, TC still wouldn't launch.
------ I monitor the slave from vSphere console, and then once I click 'Build', I see TestComplete.exe showed up in Processes, and then it's by jenkins user. However, TestComplete UI does not show up.
------- Nothing happen, no remote section from TC.
-------- Same behavior, I see TestComplete.exe showed up in Processes, and then it's by jenkins user. However, TestComplete UI does not show up.
I would think if TestComplete.exe is in Window Task Manager, then UI should launch, but it just hung there.
I am also seeing this error in jenkins-slave.err log, not sure if that's the root cause though...
Aug 21, 2017 9:05:35 AM hudson.Util getWin32ErrorMessage
WARNING: Failed to find resource bundle
java.util.MissingResourceException: Can't find bundle for base name /hudson/win32errors, locale en_US
at java.util.ResourceBundle.throwMissingResourceException(Unknown Source)
at java.util.ResourceBundle.getBundleImpl(Unknown Source)
at java.util.ResourceBundle.getBundle(Unknown Source)
at hudson.Util.getWin32ErrorMessage(Util.java:628)
at hudson.util.jna.JnaException.<init>(JnaException.java:37)
at hudson.util.jna.RegistryKey.check(RegistryKey.java:124)
at hudson.util.jna.RegistryKey.open(RegistryKey.java:223)
at com.smartbear.jenkins.plugins.testcomplete.TcInstallationsScanner$ScannerCallable.scanForInstallations(TcInstallationsScanner.java:82)
at com.smartbear.jenkins.plugins.testcomplete.TcInstallationsScanner$ScannerCallable.call(TcInstallationsScanner.java:70)
at com.smartbear.jenkins.plugins.testcomplete.TcInstallationsScanner$ScannerCallable.call(TcInstallationsScanner.java:58)
at hudson.remoting.UserRequest.perform(UserRequest.java:153)
at hudson.remoting.UserRequest.perform(UserRequest.java:50)
at hudson.remoting.Request$2.run(Request.java:336)
at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:68)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at hudson.remoting.Engine$1$1.run(Engine.java:94)
at java.lang.Thread.run(Unknown Source)