TestDriver command reference

TestDriver being a command-line tool, provides various command-line options to build, package, and run the Symbian OS tests. Using TestDriver involves setting the appropriate command-line options, which can be changed at any time.

A command in TestDriver is made of two components and a set of switches. The first component is always the testdriver, and the second component is the name of the command, for example, print, build, and so on.

The options are a list of <switch [parameters]>. A switch is in the form of a hyphen followed by a letter or double hyphen followed by a word. For example, –p winscw –-platsec ON. All commands, except the help command follow the same syntax.

Note: A switch is case sensitive, for example, -s is not same as -S. Single character switches are used with single hyphen, for example -s, -m. Switches with more than one character are used with double hyphen, for example --cl, --srv, --source.

Here is a quick reference to all commands and their options:

  1. build

  2. cancel

  3. clean

  4. cleanremote

  5. config

  6. emulatorpackage

  7. import

  8. installpackage

  9. jobstatus

  10. master

  11. masterstatus

  12. package

  13. print

  14. rbuild

  15. resultpath

  16. results

  17. run

  18. runremote

Standard commands

These standard commands are interpreted in the usual way.

  1. version: Gives the version of the tool.

    > testdriver version

  2. help: Provides general help on usage and commands.

    > testdriver help

    help command provides the following information.

    TestDriver [COMMAND]
    [COMMAND] options
    INSTALLPACKAGE : install a test package locally
    HELP           : display help on usage and commands
    PACKAGE        : build a test package
    BUILD          : build a test or test suite using Symbian build tools
    EMULATORPACKAGE: package the emulator image to be sent to a remote machine(DEPRECATED)
    PRINT          : Display testsuite contents to screen.
    CANCEL         : cancel a remote job
    IMPORT         : Imports the xml files from TDv1 format to TDv2 .driver format
    CLEAN          : Cleans TestDriver artifacts.
    CLEANREMOTE    : Cleans up the server files.
    MASTER         : Run TestDriver Remote Master
    RUNREMOTE      : Run a test package remotely
    RBUILD         : Create a TestDriver repository form a pre-built EPOC tree.
    RUN            : Run a driver file
    VERSION        : Print TestDriver version
    JOBSTATUS      : Request remote job status
    RESULTS        : Display results from a remote job
    RESULTPATH     : Returns the last result location.
    CONFIG         : Configure TestDriver
    INSTALL        : Install the TestDriver. (DEPRECATED)
    MASTERSTATUS   : Request master status TestDriver system when using TestDriver Remote
    TestDriver help [COMMAND] : For command specific help
  3. help <command>: Provides help on a particular command. For example:

    > testdriver help package

    This command provides the following information:

     package
    usage: package [-s s] [-b b] [--tp tp] [-p p]
    build a test package. 

     -b <b>      target variant urel/udeb
     -p <p>      target platform e.g arm4
     -s <s>      test/suite address
     --tp <tp>   test package absolute path

Command reference

This section is quick reference to all the commands and their options.

build

The build command builds a test using Symbian build tools.

The command-line syntax for building a test suite is:

> testdriver build [-s s] [-b b] [-sysbin] [-p p]

The following options are available when using the build command:

OptionDescriptionValue

-p

Used to specify the target platform. This is mandatory.

arm4, armv4, armv5, thumb, wins and winscw

-b

Used to specify the target variant. This is mandatory.

udeb,urel

-s

Used to specify the address of the root task to run. See Setting entry point address field, for more details.

task1.task2

--sysbin

Allows copying to SYS/BIN with STATLite.

The --statlite option of TestDriver must used instead of the --sysbin option from SITKv1.3 onwards, as --sysbin will be deprecated.

--statlite

Specifies whether STAT lite is used on the device to communicate with TestDriver.

ON or OFF.

--teflite

Specifies whether TEF lite is used.

ON, OFF, or Auto

  • ON: TEF lite is used.

  • OFF: normal TEF is used.

  • Auto: TestDriver determines which version of TEF to be used based on the statlite setting. If statlite is set to ON, then TEF lite version will be used, otherwise normal TEF will be used.

cancel

This command is used to cancel a remote job. The command-line syntax is:

> testdriver cancel <options>

OptionDescriptionValue

-j

Used to specify the job ID.

--srv

Used to specify the remote host/IP address and service name. This is optional.

clean

The clean command cleans the TestDriver artifacts.

> testdriver clean <options>

cleanremote

This command is used to clean up the server files. The syntax for using this command would be:

> testdriver cleanremote <options>

The following options are available when using the cleanremote command:

OptionDescriptionValue

-j

Used to specify the job ID.

--srv

Used to specify the host or IP address and the name of remote server

When the -j (job ID) is specified, the result files are deleted on the server and the job is removed from the list of jobs. If -j option is not specified, the server cleans up all the files on the server including EPOCROOT, REPOSITORYROOT, the stat/work directory, the results folders for all jobs and resets the job number.

config

The command is used to configure the TestDriver, the command-line syntax is:

> testdriver config [<option>]

When used without options, the command prints the current TestDriver settings which are stored in the TestDriver configuration file. The following options can be set using the config command:

OptionDescriptionValue

-b

Used to specify the build target variant/build:

udeb or urel

-bldclean

Used if clean is run with bldmake.bat and abld.bat.

ON or OFF

-bldmake

Used to specify if bldmake bldfiles is allowed.

ON or OFF

--buildNumber

Used to specify the OS build number.

-c

Used to specify the location to save results and logs (variable: ${resultroot}).

--cert

Used by signsis tool to sign the TestDriver sis files.

--clear

Used to clear the configuration backup.

--commdb

Used to initialise CommsDat with WinTAP for the emulator. Use ON/OVERWRITE/OFF.

Note: Currently ON option is not supported.

OVERWRITE or OFF

-e

Used to set the location of the EPOC drive (variable: ${epocroot}).

testdriver config -e h:\epoc

--export

Used to export the configuration to a preference file.

--import

Used to import the configuration from a preference file.

--jobs

Used to set the SERVER: remote jobs directory.

--key

Used by signsis tool to sign the TestDriver sis files.

--platsec

Used to specify the Platsec status.

ON or OFF

--port

Used to set the SERVER: Port to perform ROM flashing with trgtest.exe.

--plugin

Used to configure the plug-ins. For example, the device restart and reflash plug-ins. For more details, refer to Configuring the plug-ins.

--recovery

Used to enable/disable crash recovery. If ON, crash recovery is enabled.

ON or OFF

--repos

Used to set the location to save the repository for TestDriver (variable: ${repositoryroot}).

-s

Used to specify the address of the root task to run. See Setting entry point address field, for more details.

taskA.taskB.taskC, the default XML root directory.

OR

file:/c:/adir/aseconddir/adriverfile.driver#taskA.taskB.taskC, the full URL of the location of the task in the driver file separated by a #

--server

Used to set the remote server name.

--service

Used to set the remote service name.

--source

Used to set the location of the directory containing the source files (variable: ${sourceroot}).

testdriver config --source h:\ testdriver\source

--statlite

Specifies whether STAT lite is used on the device to communicate with TestDriver.

ON or OFF.

-t

Used to specify the transport protocol that is used to link with the device.

serial1, serial2, tcp, bt6

--testexec

Used to transfer the TestExecute Framework (TEF) dependencies.

ON or OFF

--teflite

Specifies whether TEF lite is used.

ON, OFF, or Auto

  • ON: TEF lite is used.

  • OFF: normal TEF is used.

  • Auto: TestDriver determines which version of TEF to be used based on the statlite setting. If statlite is set to ON, then TEF lite version will be used, otherwise normal TEF will be used.

--uid

Used to specify the UID range to use with TestDriver (0xFIRST:0xLAST).

Note: The UID values must be valid hexadecimal numbers.

testdriver config --uid 0x10210D02:0x10210D32

-x

Used to set the location where TestDriver1 saved its XML files (variable: ${xmlroot}).

testdriver config -x h:\ testdriver\xmlroot

You can build, set the entry point address, and so on, for the test you want to run using the 'testdriver config' command and directly run the tests using 'testdriver run' command. See Setting entry point address field, for more details.

emulatorpackage

This command is used to package the emulator image to be sent to a remote PC. The command-line syntax is:

> testdriver emulatorpackage -tp tp

where, tp is the absolute path of the test package.

The following option is available when using the emulatorpackage command:

OptionDescriptionValue

--tp

Used to specify the absolute path for the test package.

\\d:\packages\testPackage.tpkg

Note: Currently this command is deprecated.

import

The import command is used to import the XML files.

The command-line syntax is:

> testdriver import -x <options>

The following option is available when using the import command:

OptionDescriptionValue

-x

Used to set the location of the XML files (variable: ${xmlroot}). This is mandatory.

-x h:\ testdriver\xmlroot

installpackage

This command is used to install a test package locally. The syntax for installing a test package is:

> testdriver installpackage -tp tpackagePath

Where, tpackagePath is the absolute path to the test package you want to install.

The following option is available when using the import command:

OptionDescriptionValue

--tp

Used to specify the absolute path to the test package to be installed.

\\d:\packages\testPackage.tpkg

jobstatus

This command is used to request the status of a remote job. The syntax to get the status is:

> testdriver jobstatus <options>

The following options are available when using the jobstatus command:

OptionDescriptionValue

-j

Used to specify the job ID.

--srv

Used to specify the remote host name/IP address and the name of the remote service.

master

This command is used to run the TestDriver Remote Master. The syntax is:

> testdriver master

masterstatus

This command is used to request the status of the TestDriver Master system when using TestDriver Remote. The command-line syntax is:

> testdriver masterstatus <options>

--srv option is available while using the masterstatus command. Specify the IP address and the server name of master TestDriver whose status has to be requested.

package

This command is used to build a test package.

> testdriver package [-s s] [-b b] [-tp tp] [-p p]

The following options are available when using the package command:

OptionDescriptionValue

-p

Used to specify the target platform. This is mandatory.

arm4, armv4, armv5, thumb, wins and winscw

-b

Used to specify the target variant. This is mandatory.

udeb,urel

-s

Used to specify the address of the task to be built. See Setting entry point address field for more details.

task1.task2

--tp

Used to specify the absolute path of the test package to be built.

\\d:\packages\testPackage.tpkg

If --tp is not defined, a package with the name of the test is generated in the repository.

print

This command is used to print the information related to a test on the screen.

The command-line syntax for printing is:

> testdriver print -s s

where, s is the address of the root task to run, for example, root.testdataset.sampletask. The option -s displays the contents of the test on the screen.

rbuild

The rbuild command creates a TestDriver repository from a pre-built EPOC tree.

The command-line syntax is:

> testdriver rbuild <options>

The following options are available when using the rbuild command:

OptionDescriptionValue

-p

Used to specify the target platform. This is mandatory.

arm4, armv4, armv5, thumb, wins and winscw

-b

Used to specify the target variant. This is mandatory.

udeb,urel

--platsec

Used to specify the Platsec status.

ON or OFF

-s

Used to specify the address of the root task to run. See Setting entry point address field for more details.

h:\ testdriver\tasks\task1.task2

--sysbin

Allows copying to SYS/BIN with STATLite.

The --statlite option of TestDriver must be used instead of the --sysbin option from SITKv1.3 onwards, as --sysbin will be deprecated.

--statlite

Specifies whether STAT lite is used on the device to communicate with TestDriver.

ON or OFF.

--teflite

Specifies whether TEF lite is used.

ON, OFF, or Auto

  • ON: TEF lite is used.

  • OFF: normal TEF is used.

  • Auto: TestDriver determines which version of TEF to be used based on the statlite setting. If statlite is set to ON, then TEF lite version will be used, otherwise normal TEF will be used.

resultpath

This command is returns the last result location.. The syntax for obtaining the result location is:

> testdriver resultpath <options>

results

This command is used to display results from a remote job. The syntax for displaying the results is:

> testdriver results <options>

The following options are available while using the results command:

OptionDescriptionValue

-j

Used to specify the job ID.

--srv

Used to specify the address and the name of remote server

-c

Used to specify the path to pick the test results.

run

Used to run a driver file. The command-line syntax for running is:

> testdriver run <options>

The following options are available when using the run command:

OptionDescriptionValue

-p

Used to specify the target platform. This is mandatory.

arm4, armv4, armv5, wins, winscw

-b

Used to specify the build type. This is mandatory.

udeb, urel

-c

Used to specify the location from where results can be picked.

-s

Used to specify the address of the root task to run. See Setting entry point address field for more details.

taskA.taskB.taskC, the default XML root directory.

OR

file:/c:/adir/aseconddir/adriverfile.driver#taskA.taskB.taskC, the full URL of the location of the task in the driver file separated by a #.

--platsec

Used to specify the Platsec status.

ON or OFF

-t

Used to specify the transport protocol that is used to link with the device.

serial1, serial2, tcp, bt6

-l

Used to specify the location to save RDebug logs.

rdebug, log

--buildnumber

Used to specify the OS build number.

-f

Used to specify the UCC IP port to which the feedback is sent.

-k

Used to specify the Kernel EKA1/EKA2.

EKA1, EKA2

--recovery

Used to enable/disable crash recovery. If ON, crash recovery is enabled.

ON or OFF.

--sysbin

Allows copying to SYS/BIN with STATLite.

The --statlite option of TestDriver must be used instead of the --sysbin option from SITKv1.3 onwards, as --sysbin will be deprecated.

--statlite

Specifies whether STAT lite is used on the device to communicate with TestDriver.

ON or OFF.

--teflite

Specifies whether TEF lite is used.

ON, OFF, or Auto

  • ON: TEF lite is used.

  • OFF: normal TEF is used.

  • Auto: TestDriver determines which version of TEF to be used based on the statlite setting. If statlite is set to ON, then TEF lite version will be used, otherwise normal TEF will be used.

runremote

This command is used to run a test package remotely. The command-line syntax to run the package is:

> testdriver runremote [-I I] [--sysbin sysbin] [-m m] [-r r] [-t t] [-l l] [--tp tp] [--testexec testexec] [--platsec platsec] [--srv srv] [--cl cl]

When you specify the options --testexec, --sysbin and -l, they are added to the package manifest. The server reads this manifest and sets its configuration before running the test specified in the manifest of this package. These options does not have any effect on the local configuration.

OptionDescriptionValue

-m

Used to specify the mode of receiving the results.

sync

-r

Used to specify the ROM image.

--cl

Used to specify the unique name for registering the client with the server in sync mode.

-I

Used to specify the working directory, this is mandatory.

-t

Used to specify the transport protocol that is used to link with the device.

-l

Used to specify the location where the RDebug logs must be saved.

\\d:\packages

--testexec

Used to transfer the Test Execute Framework (TEF) dependencies to the package.

ON, OFF

--tp

Used to specify the test package.

\\d:\packages\testPackage.tpkg

--srv

Used to specify the host name or the IP address of the remote PC and the name of the remote service.

//lon-test01/RemoteTestDriver or //100.16.163.146/RemoteTestDriver.

--sysbin

Used to copy to SYS/BIN with STATLite.

The --statlite option of TestDriver must be used instead of the --sysbin option from SITKv1.3 onwards, as --sysbin will be deprecated.

--platsec

Used to specify if the PlatSec is ON or OFF.

ON, OFF

--statlite

Specifies whether STAT lite is used on the device to communicate with TestDriver.

ON or OFF.

--teflite

Specifies whether TEF lite is used.

ON, OFF, or Auto

  • ON: TEF lite is used.

  • OFF: normal TEF is used.

  • Auto: TestDriver determines which version of TEF to be used based on the statlite setting. If statlite is set to ON, then TEF lite version will be used, otherwise normal TEF will be used.

Note: All commands save the last used options. For example, run testdriver build -p armv5. To use the same options the next time, just type testdriver build.