Graphwalker (http://www.graphwalker.org/) is a state machine based tool, written in Java, generating sequences of tests both for online and offline testing. Diagrams are not UML models (which do not have any functionality) and as a result, much easier to get start with them.
The goal is to create long and unpredictable test sequences. The tool allows to create unique variation of paths across the edges and make these all randomly. The models do not contain any stop or exit points, however stop criteria make it possible to shut them down. In online test cases it makes possible to create the „walking path” during the actual execution. Graphwalker also supports switching between models.

Graphwalker is using MIT license therefor it is free, usable without restrictions and the source code is available on the site.
You can get it on a lot of ways(http://graphwalker.org/download/). It could be as a standalone jar file, reach it across the Github, or add it to your Maven project as a dependency. All these possibilites are available on Graphwalker’s official site.

To start your first test, first of all, you have to have an installed Java JDK which is the base of all processes. You also need an installed Maven and maybe a Git, but the later one is optional. After that a web browser and the Selenium WebDriver, which is necessary to interact with the websites. Finally you need a jUnit or TestNG to create and handle the tests.
As mentioned above, the whole project is written in Java, so it is compatible with developers’ tools like Maven, Selenium WebDriver and TestNG or jUnit. The visual representation of tests could be created by yEd graphical editor, which is an easy and fast way to create your own diagrams. It is important to notice that the model only describes an expected behavior of the system! This is not the model of the real system!

yEd (http://www.yworks.com) is a basic graphical editor that allows you to draw your own diagram representing the test. It can save .graphml format and this is positive because Graphwalker enables to generate the skeleton of the test which is based on .graphml model. This diagram also can be displayed in process of running. The command (http://graphwalker.org/docs) for the generation is available on Graphwalker’s site.
The simulation under test is available on localhost. You must add the properties file called graphwalker.properties to your project and define the web renderer:

# WebRenderer
graphwalker.wr.port=9191
graphwalker.wr.run=true

So in this case you can access it on localhost:9191.
The generation is done by the standalone Graphwalker jar which creates a java file based on .graphml model based on a pattern. This pattern is a .template file that contains textual description so you can make changes to get the most appropriate results which makes your job easier.
The best way to start your project is to include this generated java class to the project, and extend its content with the necessary code.

Similar Posts from the author: