TLDR; AccelQ tool helps automate web applications and APIs using a DSL rather than programming language
I spent some time becoming familiar with the AccelQ tool and used it to automate a web application. AccelQ have a Model Based and Domain Specific Language approach to automating. If you are looking for a tool to support automating but do not have coding experience on your team then AccelQ might help. And if you have a mix of skills then AccelQ also support adding your own code and expanding the tool capabilities.
I don’t always have a lot of time to evaluate new tools. AccelQ made this overview possible by paying for my time to familiarise myself with their tool and allowing me the freedom to create the overview video without their editorial control.
I created a video below to showcase some of the concepts and functionality of the tool without making it a tutorial video because it can be hard to get to grips with “what does this tool actually do?” and “how does this tool actually work?”.
A long time ago I wrote a test modelling tool which used directed graphs to model the application, which the user could then identify paths through, to create scripts.
AccelQ take a similar approach.
There is a modelling component which allows you model the tool and identify paths through the tool.
The transitions through the model are Actions, described in a domain specific language which uses predictive text to show you available options.
Click on `create todo name input` element
Enter `todo name` in the `create todo name input` field
Press special keyboard key, ENTER in the `create todo name input` field
create todo name inputis a re-usable locator to identify an element on the screen
todo nameis a parameter passed into the Action to make it easy to re-use the Actions
The text is built up using predictive text so you don’t type all the DSL and are prompted for the parameters etc.
I’ve found some of the editors for online DSL tools to get in the way. The AccelQ editor supported creation of the DSL scripts well.
Also, you can build up complex paths if you need to since the DSL supports flow constructs like:
if/else and loops.
The Actions are also re-usable so you can call Actions from other Actions and build up a DSL that matches your application.
In a similar way to BDD tools where you create Abstraction layers that model your application.
AccelQ have support for identifying elements in the Web Application.
This uses a Chrome extension for creating a snapshot of the state of the page, and then it helps you identify elements on the page.
The tool can identify complex location strategies and you have the ability to add your own CSS locators if you want to.
You can also use multiple location strategies for elements.
AccelQ support runnning the path through cloud based Selenium providers.
I ran the paths locally from my machine. I ran the AccelQ agent locally, which connected to AccelQ and then triggered execution from AccelQ and all browser execution ran locall on my machine.
I only spent a short time with the tool, about 1 day elapsed to familiarise myself with the functionality.
I didn’t have any more support than a customer would have.
I managed to automate the TodoMVC application and create capabilities to:
- create a Todo
- amend a Todo (rename, toggle status)
- delete a Todo
- filter Todos
- clear Todos
- assert on Todo text and numbers
The basic capabilities that would allow me to automate most of the paths through the application.
I also explored data driven tests and calling Actions from other Actions to create a set of abstractions that logically model the application.
AccelQ offer a 14 day free trial and their pricing is clear on the website, so no need to guess how much the tool costs.