- An innovative approach to UI testing.
- A toolkit to do real TDD on the UI layer
- Powerful, yet simple to use
Testatoo is the result of numerous real-world observations of developers in the trenches in the area of GUI testing.
Working for many years to promote the TDD approaches, we often faced difficulties in their implementation for the graphical layer of applications.
The "test FIRST" principle excludes all scenario recorder based approaches that only allow you to write a posteriori tests . Our experience has taught us that this path is a dead end (but we reserve this for another discussion...).
An other problem is GUI tests are brittle and costly! We do think that this is due to the lack of abstraction in existing UI testing tools.
Testatoo provides on one hand an abstraction of the UI business domain through an expressive API and on the other hand a way to express this domain via a DSL (a button semantically stays a buttons whatever the technology). With Testatoo you can therefore write tests with a seldom achieved level of expressiveness and make these tests INDEPENDENT of the underlying technology.
As a specifier I want to express my test (intention) BEFORE to code my page. So the intention is to have a page with two radio buttons to select the gender (male or female). The test can be expressed like this :
assert that the maleRadio is not checked and it has label "Male" assert that the femaleRadio is not checked and it has label "Female" check the maleRadio assert that the maleRadio is checked assert that the femaleRadio is not checked check the femaleRadio assert that the femaleRadio is checked assert that the maleRadio is not checked
Testatoo librairies can be added using maven :
<dependencies> <dependency> <groupId>org.testatoo</groupId> <artifactId>testatoo-core</artifactId> <version>2.0.b1-SNAPSHOT</version> <scope>test</scope> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit-dep</artifactId> <version>4.11</version> <scope>test</scope> </dependency> <dependency> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-java</artifactId> <version>2.39.0</version> <scope>test</scope> </dependency> </dependencies>
If you haven’t seen the Testatoo docs yet, that’s the place to start.
If you've already RTFM, the next step is to head over to the Testatoo groups and ask your question there.
If you’re pretty sure you’ve found a bug in Testatoo, the best thing to do is file a new GitHub issue. We keep a close eye on our issues, and we’re always working on the next version of Testatoo, so there’s a good chance we can solve your problem for you pretty quickly. Please include as much detail as you can (including a code sample), if possible.