Running from the Command Line
You can run Eggplant Functional scripts and suites from a command line. There are several reasons why you might want to do this:
- You can have one or more instances of Eggplant Functional running tests from the command line while you continue to develop and run scripts in GUI mode.
- You can add a command-line call to Eggplant Functional at the end of a product build script to perform a smoke test of the new build.
- You can use Windows Scheduled Tasks (or Unix
crontab
orat
command on Mac and Linux) to schedule Eggplant Functional scripts to run at specific times.
For tips on when running from the command line is an appropriate approach as opposed to using Eggdrive, see Eggdrive vs. Command Line Execution.
The Ask
and Answer
commands won't prompt for input when running from the command line. If you intend to run Eggplant Functional script from the command line and have Ask
or Answer
commands in scripts, you should set default values for the information that would otherwise be obtained from the user.
Every instance of Eggplant Functional requires a license. To use Eggplant Functional from the GUI and the command line at the same time, you need at least two licenses.
You can run Eggplant Functional scripts from a command line two ways:
- The
runscript
command, which runs scripts without launching the Eggplant Functional GUI. - The
Eggplant
command, which launches the Eggplant Functional GUI, then runs scripts.
When using the runscript
or Eggplant
commands, the command might be unable to obtain a license (due to all of the licenses being in use). If there is no license available, the command being run immediately exits and shows an error code 127
. For a better experience, pass the -MaxWaitForLicense MAX_SECONDS
parameter so that the command continues to query the license server or servers for a license up to the MAX_SECONDS
duration (in seconds). If the command being used (runscript
or Eggplant
) obtains a license within the MAX_SECONDS
time frame, it opens normally.
The Runscript Command
The runscript
command launches Eggplant Functional from a command line and runs scripts without showing the Eggplant Functional GUI. Execute the runscript
command as described here:
- Type the full path and name of the
runscript
command, followed by a space. - Type the full path and name of a script to run.
- For each additional script, insert a space and then type the full path and name for each one.
For Mac installations of Eggplant Functional version 18.0 and later, the path to call the runscript
command has changed to /Applications/Eggplant.app/Contents/MacOS/runscript
. You might need to update tests created in earlier versions of Eggplant Functional to prevent errors. You also can click the Install runscript in /usr/bin/local button in Eggplant > Preferences > Run Preferences to add the runscript
command to your user path. This allows runscript
to be called from any directory via the command line.
If you're running Eggplant Functional on a Mac and using a version older than 18.0, the runscript
command path remains /Applications/Eggplant.app/runscript
.