Automation Example
This page presents the Probato automation sample project.
The goal of this project is to demonstrate, in a practical way, how the Probato Java library can be used to automate end-to-end (E2E) functional tests, following the principles, standards, and best practices promoted by the project.
This sample project is a fundamental part of validating the Probato proposal.
Why a sample project?
Conceptual documentation is important, but test automation is essentially practical.
The sample project exists to:
- Make the Probato proposal more tangible
- Demonstrate real-world usage of the library
- Facilitate understanding for new users and contributors
- Serve as a reference for best practices
- Support technical discussions and API evolution
It complements the written documentation without replacing it.
What is automated
The sample project automates the Probato Web application itself.
This choice is intentional and strategic:
- The domain is known and controlled by the project
- The tests reflect real usage scenarios
- The library and the Web application evolve together
- The full lifecycle of the proposal is demonstrated in practice
The automation covers only essential flows, with a didactic focus, and does not aim to provide full application coverage.
Scope objectives
The scope of the sample project is intentionally limited.
It aims to demonstrate:
- Project structure
- Use of Page Objects
- Use of annotations
- Minimal execution configuration
- Evidence collection
- Integration with the Web application for sending results
It is not the goal of the project to:
- Test all features
- Serve as a complete regression suite
- Cover edge or extreme scenarios
Project structure
The project follows a simple and organized structure, aligned with the Probato proposal, making it easier to read, understand, and evolve.
The intention is that new contributors can quickly understand:
- Where Page Objects are located
- Where test scenarios are defined
- Where configuration is managed
Repository
The sample automation project is available on GitHub:
The repository contains:
- Automation source code
- An explanatory README
- Execution instructions
- Sample configurations
Target audience
This sample project is intended for:
- People who want to quickly understand how to use Probato
- Contributors interested in evolving the library
- Teams evaluating adoption of the proposal
- Users who prefer learning through practical examples
Evolution of the sample
Like Probato itself, the sample project is not static.
It may evolve as:
- New library features are introduced
- API adjustments are made
- Community feedback is incorporated
- New relevant scenarios emerge
Improvement suggestions are welcome and can be discussed via issues.
Next steps
To get started:
- Review the Getting Started guide
- Explore the Java Library
- Analyze the sample project code
The goal is to facilitate learning and support validation of the Probato proposal.