Sahi - Web Automation and Test Tool
Documentation in this directory is not current.
Please visit http://sahi.co.in/ for the latest documentation.
Ant Integration
Sahi
Description
Runs a suite of sahi files. This opens multiple browser windows , executes sahi scripts, and logs the results. The build can be made to fail based on a failureproperty.
Parameters
Attribute | Description | Required |
suite | path to suite file | |
browser | Path to browser executable | |
baseurl | url relative to which all urls to be tested will be resolved | |
sahihost | IP or hostname of server where sahi is running | |
sahiport | port where sahi is running | |
failureproperty | Name of property which will be set to false in case build fails. | |
haltonfailure | Takes "true" or "false". Specifies if build should stop executing other tests if one test fails. | |
threads | Number of simultaneous browser instances where sahi tests will be run. Do not use this property if using firefox. | optional |
logdir | Directory to output this suite's results. If absent, uses the default playback logs dir. | optional |
Example
build xml for running the sample web server bundled with sahi.The demo could be run by running "ant -f demo.xml sahitests" from the sahi base folder.
<?xml version="1.0" encoding="ISO-8859-1"?> <project name="demo" default="sahitests"> <taskdef name="sahi" classname="net.sf.sahi.ant.RunSahiTask" classpath="lib/ant-sahi.jar"/> <target name="sahitests" description="start the server and run sahi tests"> <parallel> <sequential> <waitfor maxwait="3" maxwaitunit="minute" checkevery="100"> <http url="http://localhost:10000/demo/index.htm"/> </waitfor>
<antcall target="proxyon"/>
<sahi suite="../scripts/demo.suite" browser="C:\\Program Files\\Internet Explorer\\iexplore.exe" baseurl="http://localhost:10000/demo/" sahihost="localhost" sahiport="9999" failureproperty="sahi.failed" haltonfailure="false" threads="2" logdir="D:\demo\logs" />
<antcall target="proxyoff"/>
<antcall target="stop-web"/> <antcall target="failsahi"/> </sequential> <antcall target="start-web"/> </parallel> </target> <target name="failsahi" if="sahi.failed"> <fail message="Sahi tests failed!"/> </target> <target name="start-web" description="starts web"> <java classname="net.sf.sahi.WebServer" fork="true" dir="bin" > <classpath location="lib/sahi.jar"/> </java> </target> <target name="stop-web" description="stop web server"> <get dest="stopserver.htm" src="http://localhost:10000/dyn/stopserver" ignoreerrors="true" /> <delete file="stopserver.htm"/> </target> <target name="sahireport" description="show report"> <exec command="C:\\Program Files\\Internet Explorer\\iexplore.exe file:///C:/my/sahi/logs/playback/"/> </target> <target name="start" description="starts proxy"> <java classname="net.sf.sahi.Proxy" fork="true" dir="bin"> <classpath location="lib/sahi.jar"/> </java> </target> <target name="proxyon"> <exec executable="tools/toggle_IE_proxy.exe"> <arg value="enable"/> </exec> </target> <target name="proxyoff"> <exec executable="tools/toggle_IE_proxy.exe"> <arg value="disable"/> </exec> </target> </project>