Boost logo

Boost Testing :

From: Rene Rivera (grafikrobot_at_[hidden])
Date: 2007-10-15 11:51:27


I just checked in the changes to the regression.py script(s) to allow
easier testing of any branch. Along with them I did some minor file
rearrangement. But with all the changes the old version of regression.py
is still alive in the usual location. Such that we don't interrupt
testing. Now for the new testing...

If you are interested in doing some testing with the new scripts there
is one requirement (currently): it only supports getting code from SVN.
This *might* change when we can get the tarball working again, but I
didn't bother at the moment as it's impossible to test it :-( For now
here are some short docs on what to do, while I write up some longer docs:

* Create a new directory for the branch you want to test.
* Download the new run.py script
<http://svn.boost.org/svn/boost/trunk/tools/regression/src/run.py> into
that directory.
* Run the "python run.py [options] [commands]" as you would for
regression.py.
* To test trunk use "--tag=trunk" (the default), and to test the release
use "--tag=branches/release". Or substitute any Boost tree of your choice.

There are a few option and command changes in the rework but overall the
options are the same:

usage: run.py [options] [commands]

commands: cleanup, collect-logs, get-source, get-tools, patch,
regression, setup, show-revision, test, test-clean, test-process,
test-run, update-source, upload-logs

options:
   -h, --help show this help message and exit
   --runner=RUNNER runner ID (e.g. 'Metacomm')
   --comment=COMMENT an HTML comment file to be inserted in the
                         reports
   --tag=TAG the tag for the results
   --toolsets=TOOLSETS comma-separated list of toolsets to test with
   --incremental do incremental run (do not remove previous
                         binaries)
   --timeout=TIMEOUT specifies the timeout, in minutes, for a single
                         test run/compilation
   --bjam-options=BJAM_OPTIONS
                         options to pass to the regression test
   --bjam-toolset=BJAM_TOOLSET
                         bootstrap toolset for 'bjam' executable
   --pjl-toolset=PJL_TOOLSET
                         bootstrap toolset for 'process_jam_log'
                         executable
   --platform=PLATFORM
   --user=USER Boost SVN user ID
   --local=LOCAL the name of the boost tarball
   --force-update=FORCE_UPDATE
                         do an SVN update (if applicable) instead of a
                         clean checkout, even when performing a full run
   --have-source=HAVE_SOURCE
                         do neither a tarball download nor an SVN update;
                         used primarily for testing script changes
   --proxy=PROXY HTTP proxy server address and port
                         (e.g.'http://www.someproxy.com:3128')
   --ftp-proxy=FTP_PROXY
                         FTP proxy server (e.g. 'ftpproxy')
   --dart-server=DART_SERVER
                         the dart server to send results to
   --debug-level=DEBUG_LEVEL
                         debugging level; controls the amount of
                         debugging output printed
   --send-bjam-log send full bjam log of the regression run
   --mail=MAIL email address to send run notification to
   --smtp-login=SMTP_LOGIN
                         STMP server address/login information, in the
                         following form:
                         <user>:<password>@<host>[:<port>]
   --skip-tests=SKIP_TESTS
                         do not run bjam; used for testing script changes

Note, the run.py script is strictly a bootstrap program. It will
download the current regression.py. Changes from older regression.py:

* We now default to using SVN, and until I can test with a working
tarball, it's required.

* It doesn't send bjam logs by default, and hence the option has changed
to --send-bjam-log.

For those that run the individual commands:

* There's a new command "get-tools" which needs to run first. As it
downloads bjam, BB, and the rest of the regression tools.

* There's now separate sub-commands for "test", in case you want to get
more fine grained in your control. Using "test" calls them as needed.

And last, to set up your SVN client to access you proxy Noel mentioned
earlier what to set, but here's the expanded docs for that
<http://svnbook.red-bean.com/en/1.1/ch07.html#svn-ch-7-sect-1.3.1>.

-- 
-- Grafik - Don't Assume Anything
-- Redshift Software, Inc. - http://redshift-software.com
-- rrivera/acm.org - grafik/redshift-software.com
-- 102708583/icq - grafikrobot/aim - grafikrobot/yahoo

Boost-testing list run by mbergal at meta-comm.com