Nexial Automation

Test Automation Platform for everyone!

X

external » runProgramNoWait(programPathAndParams)

Description

This command is to execute the desired program or script, which is expected to be available on the test machine. This command is similar to external » runProgram(programPathAndParams), except that this command will NOT wait for the invoked program/command/script to terminate.

This can be useful when there is the need to invoke one or more external program(s) and run them in parallel. The output (i.e. standard out and standard error) will be saved in the output directory as runProgramNoWait_A[row index].log. The [row index] will be based on the row number where this command is located. One can also derive this file name via nexial.external.output System variable. The same output file - which will be a combination of standard out and standard error - will be made available as a link in the output file as well (see screenshot in the Example section below).

Nexial supports the execution of parameterized commands over sub-shell (cmd.exe for Windows, sh or bash for *NIX and MacOSX) via the use of single quotes. For example:

/bin/bash -c '~/tools/AwesomeTool*/bin/MyTool.sh param1 param2 param3'

By using the '...' syntax, Nexial will pass the parameterized command wrapped within the single quotes to the sub-shell (in this case, bin/bash) to interpret. The bash program will in turn expand its input and then execute it within its command space. This provides the capability to expand out ~/tools/AwesomeTool*/bin/MyTool.sh to its proper/physical path before executing it. This is a great way to execute commands where its exact location cannot be determined at the time of automation.

Parameters

  • programPathAndParams - this parameter is the path along with the name of the exe file to be launched

See Also

external » runProgram(programPathAndParams)