Difference between revisions of "Slicer3:Testing"
From Slicer Wiki
(→Unix) |
(→Unix) |
||
Line 58: | Line 58: | ||
su - pieper -c "cd /home/pieper/slicer3/nightly; ./Slicer3/Scripts/getbuildtest.tcl -t Nightly |& tee -a nightly.log" | su - pieper -c "cd /home/pieper/slicer3/nightly; ./Slicer3/Scripts/getbuildtest.tcl -t Nightly |& tee -a nightly.log" | ||
</pre> | </pre> | ||
+ | |||
+ | Note: this assumes your shell is csh-like. If you use bash, replace the "|&" with "2>&1 |". |
Revision as of 15:52, 3 May 2007
Home < Slicer3:TestingHow to do testing in Slicer3.
Contents
Writing Tests
C++
Tcl
Calling tests from CMake/CTest
Setting up automatic builds
Windows
For windows you need to use the Add Scheduled Task option in the Control Panel to create the build. This task runs in a 'dumb' dos shell, so you need to help it get jump started. The following works:
- create a .bat file that that is called from the Scheduled Task
- create a shell script that runs the build and call that from the .bat file
Here's an example for run.bat:
echo off C: chdir C:\cygwin\bin set CYGWIN=binmode tty ntsec rxvt -sl 1000 -e c:/pieper/run.csh -l
this example uses rxvt, which is available from cygwin, but not installed by default (it's an xterm ported to cygwin).
And here's an example run.csh:
#!/bin/csh setenv PATH "/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/cygdrive/c/WINDOWS/system32:/cygdrive/c/WINDOWS:/cygdrive/c/WINDOWS/System32/Wbem" c:/pieper/bwh/slicer3/latest/Slicer3/Scripts/getbuildtest.tcl --update --test-type Nightly |& c:/cygwin/bin/tee c:/pieper/bwh/slicer3/latest/Slicer3.build-log c:/cygwin/bin/sleep 5
Unix
Here's an example script that can be dropped into /etc/cron.daily
#!/bin/tcsh cd /home/pieper/slicer3/nightly rm -rf Slicer3 Slicer3-lib Slicer3-build su - pieper -c "cd /home/pieper/slicer3/nightly; svn co http://www.na-mic.org/svn/Slicer3/trunk Slicer3 |& tee nightly.log" su - pieper -c "cd /home/pieper/slicer3/nightly; ./Slicer3/Scripts/getbuildtest.tcl -t Nightly |& tee -a nightly.log"
Note: this assumes your shell is csh-like. If you use bash, replace the "|&" with "2>&1 |".