I am trying to figure out how to fire the build on a test PC, not the build server. Looking at the setting, I don't see a way to launch the test suite on that PC over the network. Do I need to have the test executable located on the build server, then have Ranorex log into the test PC to actually run it?
Am I missing something? I need to be able to add authentication to the process and be able to run on a remote pc. Thanks.
Ranorex Azure build task.
-
- Posts: 169
- Joined: Fri Nov 08, 2019 3:23 pm
Re: Ranorex Azure build task.
I have added the agent to the test PC, but I am not sure how to call the agent from the build task.
-
- Posts: 169
- Joined: Fri Nov 08, 2019 3:23 pm
Re: Ranorex Azure build task.
Ok, I tried using the command line to kick off the agent, but the test run fails.
System.IO.FileNotFoundException: Could not load file or assembly 'Ranorex.Bootstrapper, Version=9.2.0.0, Culture=neutral, PublicKeyToken=b798506b574ebc9a' or one of its dependencies. The system cannot find the file specified.
File name: 'Ranorex.Bootstrapper, Version=9.2.0.0, Culture=neutral, PublicKeyToken=b798506b574ebc9a'
at __RxMain.__RxProgram.RanorexInit()
at __RxMain.__RxProgram.Main(String[] args) in C:\Work\P38V&V\P38\obj\Debug\__RxPrograms.g.cs:line 30
I just reinstalled 9.2.0 this morning. I am able to run the project locally from the command line.
System.IO.FileNotFoundException: Could not load file or assembly 'Ranorex.Bootstrapper, Version=9.2.0.0, Culture=neutral, PublicKeyToken=b798506b574ebc9a' or one of its dependencies. The system cannot find the file specified.
File name: 'Ranorex.Bootstrapper, Version=9.2.0.0, Culture=neutral, PublicKeyToken=b798506b574ebc9a'
at __RxMain.__RxProgram.RanorexInit()
at __RxMain.__RxProgram.Main(String[] args) in C:\Work\P38V&V\P38\obj\Debug\__RxPrograms.g.cs:line 30
I just reinstalled 9.2.0 this morning. I am able to run the project locally from the command line.
Re: Ranorex Azure build task.
Hi,
At first, Ranorex cannot login to the desktop, on which you want to run your test. It must already been running and unlocked!
As for the second problem, in my opinion, the test machine does not have all required pre-requisities installed? Have you installed full Ranorex on it?
Of course, you don't have to install entire Ranorex Studio on test machine (if you don't wish to do it). But you still have to make sure that there are installed all required runtime libs! And it's best doing it via Ranorex Studio install, which initially checks the presence of all runtime libs and offers to install the missing ones. After that, it starts the Ranorex Studio setup, which you can freely skip. Hope this helps?
Eventually, you can check and install the required runtimes manually. Check this page, with the list of sw requirements, per each Ranorex version:
https://www.ranorex.com/help/latest/ran ... uirements/
At first, Ranorex cannot login to the desktop, on which you want to run your test. It must already been running and unlocked!
As for the second problem, in my opinion, the test machine does not have all required pre-requisities installed? Have you installed full Ranorex on it?
Of course, you don't have to install entire Ranorex Studio on test machine (if you don't wish to do it). But you still have to make sure that there are installed all required runtime libs! And it's best doing it via Ranorex Studio install, which initially checks the presence of all runtime libs and offers to install the missing ones. After that, it starts the Ranorex Studio setup, which you can freely skip. Hope this helps?
Eventually, you can check and install the required runtimes manually. Check this page, with the list of sw requirements, per each Ranorex version:
https://www.ranorex.com/help/latest/ran ... uirements/
Pavel Kudrys
Ranorex explorer at Descartes Systems
Please add these details to your questions:
Ranorex explorer at Descartes Systems
Please add these details to your questions:
- Ranorex Snapshot. Learn how to create one >here<
- Ranorex xPath of problematic element(s)
- Ranorex version
- OS version
- HW configuration
-
- Posts: 169
- Joined: Fri Nov 08, 2019 3:23 pm
Re: Ranorex Azure build task.
I will install Ranorex 9.2.0 on the test machine today and try that. I thought that the build included all the runtimes to be deployed so that I could use the agent without installing the full studio?
https://www.ranorex.com/help/latest/ran ... ble-build/
From that page:
To execute a test in a runtime environment, you need to include the Ranorex Studio runtime library with the executable build. You do so by activating the option Copy runtime to output in the settings. By default, it is deactivated.
Is there somewhere special I need to put the runtime directory on the test machine? I don't see anywhere in the agent config where I can specify that.
https://www.ranorex.com/help/latest/ran ... ble-build/
From that page:
To execute a test in a runtime environment, you need to include the Ranorex Studio runtime library with the executable build. You do so by activating the option Copy runtime to output in the settings. By default, it is deactivated.
Is there somewhere special I need to put the runtime directory on the test machine? I don't see anywhere in the agent config where I can specify that.
Re: Ranorex Azure build task.
Hi,
I'm sorry for the confusion. With the term 'runtimes', I refer to MS Visual Studio runtimes and .Net libs Of course, once you enable option "Copy runtimes to output", Ranorex copies its own runtimes. But MS runtimes must be still installed on each machine, on which you want to run Ranorex Studio or compiled tests.
I'm sorry for the confusion. With the term 'runtimes', I refer to MS Visual Studio runtimes and .Net libs Of course, once you enable option "Copy runtimes to output", Ranorex copies its own runtimes. But MS runtimes must be still installed on each machine, on which you want to run Ranorex Studio or compiled tests.
Pavel Kudrys
Ranorex explorer at Descartes Systems
Please add these details to your questions:
Ranorex explorer at Descartes Systems
Please add these details to your questions:
- Ranorex Snapshot. Learn how to create one >here<
- Ranorex xPath of problematic element(s)
- Ranorex version
- OS version
- HW configuration
-
- Posts: 169
- Joined: Fri Nov 08, 2019 3:23 pm
Re: Ranorex Azure build task.
Ok, that makes sense, thanks for the clarification.
-
- Posts: 169
- Joined: Fri Nov 08, 2019 3:23 pm
Re: Ranorex Azure build task.
OK, this build task still doesn't work. Using the same info, I can fire off the test from a Command Task, but using the Ranorex Build Task, it just hangs.
Here is the console output. The agent never gets hit.
******************************************************************************
Starting: Run Ranorex test executable P38.exe on agent: GeodeTestPC
******************************************************************************
==============================================================================
Task : Run Ranorex Studio test executable
Description : Create a build/release task for Azure Pipelines/Team Foundation Server (TFS) that can configure and run Ranorex Studio test executables. Please note that Ranorex licensing supports self-hosted agents only.
Version : 1.0.0
Author : RanorexGmbH
Help : This task makes Ranorex more accessible to the Azure DevOps and TFS community. Ranorex licensing supports [self-hosted agents](https://docs.microsoft.com/en-us/azure/ ... ure-devops) only. [Learn More](https://www.ranorex.com/help/latest/int ... roduction/)
==============================================================================
agent.TempDirectory=C:\agent\_work\_temp
loading inputs and endpoints
loading ENDPOINT_AUTH_PARAMETER_SYSTEMVSSCONNECTION_ACCESSTOKEN
loading ENDPOINT_AUTH_SCHEME_SYSTEMVSSCONNECTION
loading ENDPOINT_AUTH_SYSTEMVSSCONNECTION
loading INPUT_ADVANCEDCMDLINE
loading INPUT_ATTACHREPORT
loading INPUT_ENABLETESTRAIL
loading INPUT_REPORTLEVEL
loading INPUT_REPORTNAME
loading INPUT_TESTEXEPATH
loading INPUT_TESTSUITEPATH
loaded 10
Agent.ProxyUrl=undefined
Agent.CAInfo=undefined
Agent.ClientCert=undefined
Agent.SkipCertValidation=undefined
enableTestRail=false
reportName=%S_%Y%M%D_%T
reportLevel=Success
testExePath=\\GeodeTestPC\RanroexSetupFolder\Ranorex\P38.exe
system.defaultWorkingDirectory=C:\agent\_work\39\s
defaultRoot: 'C:\agent\_work\39\s'
findOptions.allowBrokenSymbolicLinks: 'false'
findOptions.followSpecifiedSymbolicLink: 'true'
findOptions.followSymbolicLinks: 'true'
matchOptions.debug: 'false'
matchOptions.nobrace: 'true'
matchOptions.noglobstar: 'false'
matchOptions.dot: 'true'
matchOptions.noext: 'false'
matchOptions.nocase: 'true'
matchOptions.nonull: 'false'
matchOptions.matchBase: 'false'
matchOptions.nocomment: 'false'
matchOptions.nonegate: 'false'
matchOptions.flipNegate: 'false'
pattern: '\\GeodeTestPC\RanroexSetupFolder\Ranorex\P38.exe'
findPath: '\\GeodeTestPC\RanroexSetupFolder\Ranorex\P38.exe'
statOnly: 'true'
found 1 paths
applying include pattern
1 matches
1 final results
advancedCmdLine=/agent:http://geodetestpc:8081/api
runConfig=null
attachReport=true
TEMP=C:\agent\_work\_temp
testSuitePath=\\GeodeTestPC\RanroexSetupFolder\Ranorex\_Installation.rxtst
system.defaultWorkingDirectory=C:\agent\_work\39\s
system.defaultWorkingDirectory=C:\agent\_work\39\s
defaultRoot: 'C:\agent\_work\39\s'
findOptions.allowBrokenSymbolicLinks: 'false'
findOptions.followSpecifiedSymbolicLink: 'true'
findOptions.followSymbolicLinks: 'true'
matchOptions.debug: 'false'
matchOptions.nobrace: 'true'
matchOptions.noglobstar: 'false'
matchOptions.dot: 'true'
matchOptions.noext: 'false'
matchOptions.nocase: 'true'
matchOptions.nonull: 'false'
matchOptions.matchBase: 'false'
matchOptions.nocomment: 'false'
matchOptions.nonegate: 'false'
matchOptions.flipNegate: 'false'
pattern: '\\GeodeTestPC\RanroexSetupFolder\Ranorex\_Installation.rxtst'
findPath: '\\GeodeTestPC\RanroexSetupFolder\Ranorex\_Installation.rxtst'
statOnly: 'true'
found 1 paths
applying include pattern
1 matches
1 final results
And it just sits there. I had to put the Runtimes and test executable on the test PC and reference them in the task. When the runtimes were on the build server, Ranorex failed to see them. When the test executable was on the build server, it also failed to see it. So I had to create a network share on the test PC and have them available there in order for it to run at all.
If I run the Command Task, there is a timeout warning in the script (there is another thread about that, still unresolved) and the test succeeds, but reports as failed to TFS with an Exit Code -1.
Here is the console output. The agent never gets hit.
******************************************************************************
Starting: Run Ranorex test executable P38.exe on agent: GeodeTestPC
******************************************************************************
==============================================================================
Task : Run Ranorex Studio test executable
Description : Create a build/release task for Azure Pipelines/Team Foundation Server (TFS) that can configure and run Ranorex Studio test executables. Please note that Ranorex licensing supports self-hosted agents only.
Version : 1.0.0
Author : RanorexGmbH
Help : This task makes Ranorex more accessible to the Azure DevOps and TFS community. Ranorex licensing supports [self-hosted agents](https://docs.microsoft.com/en-us/azure/ ... ure-devops) only. [Learn More](https://www.ranorex.com/help/latest/int ... roduction/)
==============================================================================
agent.TempDirectory=C:\agent\_work\_temp
loading inputs and endpoints
loading ENDPOINT_AUTH_PARAMETER_SYSTEMVSSCONNECTION_ACCESSTOKEN
loading ENDPOINT_AUTH_SCHEME_SYSTEMVSSCONNECTION
loading ENDPOINT_AUTH_SYSTEMVSSCONNECTION
loading INPUT_ADVANCEDCMDLINE
loading INPUT_ATTACHREPORT
loading INPUT_ENABLETESTRAIL
loading INPUT_REPORTLEVEL
loading INPUT_REPORTNAME
loading INPUT_TESTEXEPATH
loading INPUT_TESTSUITEPATH
loaded 10
Agent.ProxyUrl=undefined
Agent.CAInfo=undefined
Agent.ClientCert=undefined
Agent.SkipCertValidation=undefined
enableTestRail=false
reportName=%S_%Y%M%D_%T
reportLevel=Success
testExePath=\\GeodeTestPC\RanroexSetupFolder\Ranorex\P38.exe
system.defaultWorkingDirectory=C:\agent\_work\39\s
defaultRoot: 'C:\agent\_work\39\s'
findOptions.allowBrokenSymbolicLinks: 'false'
findOptions.followSpecifiedSymbolicLink: 'true'
findOptions.followSymbolicLinks: 'true'
matchOptions.debug: 'false'
matchOptions.nobrace: 'true'
matchOptions.noglobstar: 'false'
matchOptions.dot: 'true'
matchOptions.noext: 'false'
matchOptions.nocase: 'true'
matchOptions.nonull: 'false'
matchOptions.matchBase: 'false'
matchOptions.nocomment: 'false'
matchOptions.nonegate: 'false'
matchOptions.flipNegate: 'false'
pattern: '\\GeodeTestPC\RanroexSetupFolder\Ranorex\P38.exe'
findPath: '\\GeodeTestPC\RanroexSetupFolder\Ranorex\P38.exe'
statOnly: 'true'
found 1 paths
applying include pattern
1 matches
1 final results
advancedCmdLine=/agent:http://geodetestpc:8081/api
runConfig=null
attachReport=true
TEMP=C:\agent\_work\_temp
testSuitePath=\\GeodeTestPC\RanroexSetupFolder\Ranorex\_Installation.rxtst
system.defaultWorkingDirectory=C:\agent\_work\39\s
system.defaultWorkingDirectory=C:\agent\_work\39\s
defaultRoot: 'C:\agent\_work\39\s'
findOptions.allowBrokenSymbolicLinks: 'false'
findOptions.followSpecifiedSymbolicLink: 'true'
findOptions.followSymbolicLinks: 'true'
matchOptions.debug: 'false'
matchOptions.nobrace: 'true'
matchOptions.noglobstar: 'false'
matchOptions.dot: 'true'
matchOptions.noext: 'false'
matchOptions.nocase: 'true'
matchOptions.nonull: 'false'
matchOptions.matchBase: 'false'
matchOptions.nocomment: 'false'
matchOptions.nonegate: 'false'
matchOptions.flipNegate: 'false'
pattern: '\\GeodeTestPC\RanroexSetupFolder\Ranorex\_Installation.rxtst'
findPath: '\\GeodeTestPC\RanroexSetupFolder\Ranorex\_Installation.rxtst'
statOnly: 'true'
found 1 paths
applying include pattern
1 matches
1 final results
And it just sits there. I had to put the Runtimes and test executable on the test PC and reference them in the task. When the runtimes were on the build server, Ranorex failed to see them. When the test executable was on the build server, it also failed to see it. So I had to create a network share on the test PC and have them available there in order for it to run at all.
If I run the Command Task, there is a timeout warning in the script (there is another thread about that, still unresolved) and the test succeeds, but reports as failed to TFS with an Exit Code -1.
-
- Posts: 169
- Joined: Fri Nov 08, 2019 3:23 pm
Re: Ranorex Azure build task.
Here is the output from the Command Task:
Execute test suite
Test execution failed
Report: C:\agent\_work\39\s\_Installation_20191204_071218.rxzlog
Report: C:\agent\_work\39\s\UI_VV_20191204_071215.rxzlog
Job completed: Error
Process completed with exit code -1.
System.Exception: Process completed with exit code -1.
If you look at the log, it was a success, so I don't understand why it reports as a failure.
Execute test suite
Test execution failed
Report: C:\agent\_work\39\s\_Installation_20191204_071218.rxzlog
Report: C:\agent\_work\39\s\UI_VV_20191204_071215.rxzlog
Job completed: Error
Process completed with exit code -1.
System.Exception: Process completed with exit code -1.
If you look at the log, it was a success, so I don't understand why it reports as a failure.
-
- Posts: 169
- Joined: Fri Nov 08, 2019 3:23 pm
Re: Ranorex Azure build task.
Thanks to Ned, I got the Ranorex build task to successfully kick off my test suite. I had to specify the relative path to the test suite and it seems the plug in doesn't like multiple test suites or supports them.
So now I will build a Build Validation Test Suite that includes all the tests.
So now I will build a Build Validation Test Suite that includes all the tests.
-
- Posts: 169
- Joined: Fri Nov 08, 2019 3:23 pm
Re: Ranorex Azure build task.
So at the bottom of this article:
https://www.ranorex.com/help/latest/int ... -pipeline/
Set the test result format to JUnit.
As test results files, specify **/*.xml.
TFS reports an error:
Processed: ##vso[task.logissue type=warning]Failed to read C:\agent\_work\37\s\Reports\BuildReport.rxlog.junit.xml. Error : Data at the root level is invalid. Line 23, position 13.
Invalid results file. Please make sure the Test Result Format field in the task matches the result format of the file: C:\agent\_work\37\s\Reports\BuildReport.rxlog.junit.xml
Processed: ##vso[task.logissue type=warning]Invalid results file. Please make sure the Test Result Format field in the task matches the result format of the file: C:\agent\_work\37\s\Reports\BuildReport.rxlog.junit.xml
Leaving script PublishTestResults.ps1
So what am I doing wrong with this reporting piece?
https://www.ranorex.com/help/latest/int ... -pipeline/
Set the test result format to JUnit.
As test results files, specify **/*.xml.
TFS reports an error:
Processed: ##vso[task.logissue type=warning]Failed to read C:\agent\_work\37\s\Reports\BuildReport.rxlog.junit.xml. Error : Data at the root level is invalid. Line 23, position 13.
Invalid results file. Please make sure the Test Result Format field in the task matches the result format of the file: C:\agent\_work\37\s\Reports\BuildReport.rxlog.junit.xml
Processed: ##vso[task.logissue type=warning]Invalid results file. Please make sure the Test Result Format field in the task matches the result format of the file: C:\agent\_work\37\s\Reports\BuildReport.rxlog.junit.xml
Leaving script PublishTestResults.ps1
So what am I doing wrong with this reporting piece?