GraphWalker is a Model-Based Testing tool. It parses models and generates test sequences.
1. Modules
1.1 graphwalker-core
1.2 graphwalker-maven-plugin
1.3 graphwalker-jenkins-plugin
1.4 graphwalker-example
2. Example
2.1 pom.xml
2.2 Example.java
3. License
Contains the GraphWalker implementation
Showcase the GraphWalker project
mvn graphwalker:testDefines the dependencies needed to implement the model and the plugin needed to execution the model. A model can use actions and guards of any JSR 223 engine, but we need to add the dependency for the script engine.
...
<dependencies>
<dependency>
<groupId>org.graphwalker</groupId>
<artifactId>graphwalker-core</artifactId>
<version>3.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>groovy</groupId>
<artifactId>grovvy-all</artifactId>
<version>1.1-rc-1</version>
</dependency>
</dependencies>
...
<build>
<plugins>
<plugin>
<groupId>org.graphwalker</groupId>
<artifactId>graphwalker-maven-plugin</artifactId>
<version>3.0-SNAPSHOT</version>
</plugin>
</plugins>
</build>
...Implements all the vertices and edges defined by the model, in this case the Example.graphml. Through the annotation we can define a stop condition that differs from the default one, if we create a class that implements the StopCondition interface we can tell GraphWalker to use that implementation through the stopCondition parameter in the @GraphWalker annotation.
...
import my.package.MyStopCondition;
...
@GraphWalker(id = "MyExample", model = "models/Example.graphml", stopCondition = MyStopCondition.class)
public class Example {
...