regress.bat
to runregress
@INC
(the
path where perl looks for modules). If you are running from the
deployed directory and .
is in @INC
(it normally is) then this is okay. Otherwise, add it.runregress
tool is run like any shebanged perl script. Invoke with the
option -help
(or -h
or
-?
) to check that it is working, and to view the
documentation.The deployment tool should create the required configuration,
as with regress.bat
. You will notice some new options in the
deployment tool. The compareProgram
option does not
apply to runregress
, it is superceded by
report_types
.
The configuration file created by the deployment tool is
regress.ini
. After deployment, you can make further
configuration changes yourself. Anything you add to
local.ini
will override the generated
regress.ini
, so you should use that for long-term
local changes. (You can change the configuration file(s) used on
the command line, but this is the default.)
The argument on the command line names the chosen
configuration, by identifying a block to load from each
configuration file. This block consists of a line
[configuration_name]
, followed by lines of
the form name=value
. A global block
starting [*]
is always loaded. With
-setup
, you may omit the configuration name, and only
the global block is loaded: with the deployed configuration file,
all the required variables for a setup run are included there.
With one exception, runregress
supports all of the
configuration variables of regress.bat
and more. The
exception is compare
, which has been superceded by report
.
Usage: runregress
supports all of the command line
options of regress.bat
and more.
Documentation is available using the option -help
(or -h
or -?
). The same information is
provided in HTML in the deployed directory.
With one exception, the behaviour of runregress
currently mimics that of runregress.bat
in all
important respects. This is expected to change in the future as
new functionality is added to runregress
and
regress.bat
gets left behind.
The major exception to this emulation is in generating reports.
There are other minor differences in behaviour, but hopefully
these are all straight improvements. For example,
runregress
handles errors more robustly.
By default, regress.bat
launches Beyond Compare on
completion. This is changed for runregress
: the
default behaviour is now to write a summary of the results to
standard output. This change is necessary since
runregress
is intended to be portable and the
availability of Beyond Compare cannot be assumed.
To generate another type of report, use the command line option
-report
(or -r
) or the configuration
variable report
. You can generate multiple reports
using a comma- or space-separated list. To see a list of available
types and their descriptions, use the option
-listreports
. To restore the launching of Beyond
Compare, where available, you can use -r BC2
.
On linux, the xxdiff
report type provides a
similar functionality, using the tool of that name. Of course, you
need to be either running the suite locally or via a ssh
connection with X-forwarding.
One new feature of runregress
is the option to
generate reports on a suite you have previously run. To do this,
use the option -norun
(-n
).
Another new feature is the checking of setup runs. Where
regress.bat
ignores the output of setup queries,
runregress
checks for errors.
Module | Status |
---|---|
Config::Simple | Required |
Cwd | Required |
Exporter | Required |
File::Compare | Required |
File::Copy | Required |
File::Path | Required |
File::Spec::Functions | Required |
Getopt::Long | Required |
IPC::Run | Required |
Pod::Usage | Required |
POSIX | Required |
Text::Diff | Required by the
Diff and DiffFull report
types |
HTML::Entities | Required by the
HTML report type |
Text::Diff::HTML | Required by the
HTML report type |
Template | Required by the
HTML report type |
Term::Prompt | Required if you do not specify a password in the configuration file |
Sys::Hostname | Recommended: if available, and it can find the hostname, the hostname will be logged |
Text::Wrap | Optional: if
available, makes output of -listreports
neater |
dir
to @INC
.
perl
-Idir
.use lib
dir
.PERL5LIB
environment variable.#!
)
and perl can be found at /usr/bin/perl
(these
things should be true on linux and cygwin) the script can be run
like any command: if the deployed directory is in your path (it
probably isn't: having .
in your path is a security
risk) just use runregress
; otherwise, use e.g.
./runregress
or
path/to/runregress
./usr/bin/perl
, either edit the shebang
line in the script and procede as above, or procede as
below.perl runregress
or perl
path/to/runregress
. This assumes that perl itself is in
your path (it should be).