Reporting

WebTau in its core captures test actions and assertions. Everything you do, every match that is passed or failed is being recorded.Information is available in console output, so you don't need to sprinkle println statements everywhere. And all the captured information is available as self-contained rich HTML report.Single report HTML file that you can email, slack or host on an FS and open with no servers required. Groovy TableData table = data.csv.table("data/table.csv") Java TableData table = data.csv.table("data/table.csv"); > reading csv from file or resource data/table.csv . read 3 lines of csv from file /home/runner/work/webtau/webtau/webtau-feature-testing/examples/data/table.csv (0ms)

High Level API

WebTau provides high level API to interact with HTTP, Browser, Database, File System. It is easy to use, requires minimum setup and every action is reported.You can use WebTau to only test a single layer of your product, but you can als combine layers in a single test and setup data using HTTP layer and validate using a Browser layer or a DB layer. All is with a single configuration, consistent set of matchers and rich reporting.

Syntax Sugar

WebTau provides DSL to make common testing operations succinct. Syntax sugar is available for Java and Groovy and since WebTau core is Java, additional syntax sugar can be added to languages like Kotlin and Scala. Groovy ["Name" | "Start Date" | "Games To Play" ] { ______________________________________________________ "John" | LocalDate.of(2016, 6, 20) | 10 "Bob" | cell.above | cell.above + 1 "Mike" | cell.above | cell.above + 1 } Java table("Name", "Start Date" , "Games To Play", ________________________________________________________________, "John", LocalDate.of(2016, 6, 20), 10, "Bob" , cell.above , cell.above.plus(1), "Mike", cell.above , cell.above.plus(1))

REPL

Writing end-to-end tests is hard and there are a lot of excuses not write one. End-to-end test feedback loop is usually long and slow. WebTau provides REPL/experiments REPL mode to help you experiment with API and write a test in incremental fashion. webtau:000> http.get("https://jsonplaceholder.typicode.com/todos/1") > executing HTTP GET https://jsonplaceholder.typicode.com/todos/1 . header.statusCode equals 200 (6ms) response (application/json; charset=utf-8): { "userId": 1, "id": 1, "title": "delectus aut autem", "completed": false } . executed HTTP GET https://jsonplaceholder.typicode.com/todos/1 (456ms)

Documentation Artifacts

Your users deserve useful and up-to date documentation. Manually maintaining documentation is hard and expensive. WebTau helps you to capture test artifacts during the tests, for exampleScreenshots (with annotations) API request/response examples CLI params and sample output Captured artifacts are agnostic to the documentation system. However, you can take a look at https://github.com/testingisdocumenting/znai Znai documentation system that was designed with documentation maintenance in mind. Enter search query Results are displayed in a grid