Installing DDSteps

Maven

DDSteps is now distributed using Maven 2. First, you need to add our DDSteps Maven Repo to your Maven pom.

<repository>
	<id>ddsteps.org</id>
	<name>DDSteps Repo</name>
	<url>http://repo.ddsteps.org/maven/release/</url>
</repository>

Next, you add the DDSteps modules that you want as test dependencies.

<dependency>
	<groupId>org.ddsteps</groupId>
	<artifactId>ddsteps</artifactId>
	<version>1.2-m3</version>
</dependency>

Setting up your project

You need to put some configuration files in your classpath for DDSteps to work. Here are some basic config to get you started.

ddsteps-context.xml is a Spring configuration file.

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
">

<!-- Configurer that replaces ${...} placeholders with values from a properties file -->
<!-- (in this case, JDBC-related settings for the dataSource definition below) -->
<bean id="propertyConfigurer"
	class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
	<property name="location"
		value="classpath:/ddsteps-context.properties" />
</bean>

<!-- Data Loader / Excel -->

<bean id="dataLoader"
	class="org.ddsteps.data.excel.CachingExcelDataLoader" />

</beans>

Next is ddsteps-context.properties which is config for the above ddsteps-context.xml file. You'll thank me later, so just add it in. You'll want to edit the path below to point to some directory where you want DDSteps to write debug trails of web pages.

jdbc.driverClassName=org.hsqldb.jdbcDriver
jdbc.url=jdbc:hsqldb:hsql://localhost:9001
jdbc.username=sa
jdbc.password=

ddsteps.trails.folder=/Users/adamskogman/Documents/DDSteps/trails

selenium.host=localhost
selenium.port=4444
selenium.browser=*firefox

Lastly, add two more empty properties files; ddsteps-defaults.properties and ddsteps-placeholders.properties. These are explained in the documentation, but they're good to have from the start.