Sign inSign up

probato/probato-manager

By probato

•Updated 7 months ago

Centralized execution monitoring and analysis for the Probato test automation framework.

Image
Languages & frameworks
Integration & delivery
Developer tools
0

365

probato/probato-manager repository overview

⁠Probato Manager

Probato Manager is the component responsible for collecting, organizing, and visualizing execution results generated by the Probato framework.

While the Probato Framework executes and orchestrates automated tests, Probato Manager acts as the observability and analysis layer, allowing teams to track executions, metrics, and evidence produced during test runs.

Its purpose is to centralize execution data and transform it into useful insights for quality analysis, failure diagnostics, and monitoring the evolution of tests over time.

Within the Probato ecosystem, the components interact as follows:

Probato Framework ──▶ Execution Data ──▶ Probato Manager

During executions, different types of information can be sent to the Manager, including:

  • Execution metadata (project, suite, script, page object)
  • Execution status and duration
  • Description of executed steps
  • Evidence (screenshots, videos, and logs)
  • Execution history

These data allow detailed analysis and help teams track quality trends over time.

Probato Manager benefits different roles within a team:

QA Engineers

  • Analyze test failures
  • Identify unstable tests
  • Review execution history

Developers

  • Diagnose issues faster
  • Understand execution behavior
  • Validate implemented fixes

Managers and Stakeholders

  • Monitor quality metrics
  • Track execution stability
  • Evaluate release readiness

Probato Manager is distributed as a Docker image, enabling simple and standardized installation across environments and facilitating integration with CI/CD pipelines.


⁠Features

  • Centralized storage of execution results
  • Storage of test evidence
  • Visualization and analysis of executions
  • Execution history tracking
  • Email notifications
  • Integration with object storage (MinIO)
  • Automatic database migration with Liquibase
  • Simplified execution using Docker

⁠Docker Image

Official image:

probato/probato-manager

Available tags:

TagDescription
latestLatest stable version
0.1.0First public release

⁠Required Services

Probato Manager depends on external services to function correctly. The application will not start if these services are unavailable.

The following services are required:

ServiceDescription
PostgreSQLRelational database used by the application
MinIOObject storage used for files and execution evidence
SMTP ServerUsed to send email notifications

⁠Database Configuration (PostgreSQL)

VariableDescriptionDefault value
DATASOURCE_HOSTPostgreSQL hostrequired
DATASOURCE_PORTPostgreSQL port5432
DATASOURCE_DATABASEDatabase nameprobato
DATASOURCE_USERNAMEDatabase usernameprobato
DATASOURCE_PASSWORDDatabase passwordprobato

Connection format:

jdbc:postgresql://${DATASOURCE_HOST}:${DATASOURCE_PORT}/${DATASOURCE_DATABASE}

⁠Administrator User

When the container starts, an administrator user can be automatically created.

VariableDescription
PROBATO_ADMIN_EMAILAdministrator email
PROBATO_ADMIN_PASSWORDAdministrator password

⁠MinIO Configuration

VariableDescriptionDefault value
MINIO_HOSTMinIO server hostrequired
MINIO_PORTMinIO server portrequired
MINIO_BUCKETDefault bucket used by the applicationprobato
MINIO_USERNAMEMinIO access keyrequired
MINIO_PASSWORDMinIO secret keyrequired

Endpoint format:

http://${MINIO_HOST}:${MINIO_PORT}

⁠Email Configuration (SMTP)

Email configuration is required, since the system uses notifications for several events.

VariableDescription
EMAIL_ADDRESSEmail account used to send notifications
EMAIL_PASSWORDEmail account password
EMAIL_SMPT_HOSTSMTP server host
EMAIL_SMPT_PORTSMTP server port

⁠Notification Configuration

VariableDescriptionDefault value
NOTIFICATION_ENABLEDEnables or disables email notificationstrue

⁠Database Migrations

Database migrations are automatically executed using Liquibase during application startup.

The container runs with the following context:

docker

This allows specific scripts to be executed when the application is running inside a containerized environment.


⁠Ports

PortDescription
8080Probato Manager API

⁠Example Environment with Docker Compose

Example environment containing PostgreSQL, MinIO, and Probato Manager.

version: "3.7"

services:

  minio-dev:
    image: minio/minio
    container_name: minio
    restart: always
    ports:
      - "9000:9000"
      - "9001:9001"
    environment:
      MINIO_ROOT_USER: admin
      MINIO_ROOT_PASSWORD: admin123
    command: server /data --console-address ":9001"

  postgres-dev:
    image: postgres
    container_name: postgres-dev
    restart: always
    ports:
      - "5432:5432"
    environment:
      POSTGRES_USER: root
      POSTGRES_PASSWORD: root
      POSTGRES_DB: probato

  probato-manager:
    image: probato/probato-manager:latest
    container_name: probato-manager
    restart: always
    ports:
      - "8080:8080"
    depends_on:
      - postgres-dev
      - minio-dev
    environment:

      PROBATO_ADMIN_EMAIL: [email protected]
      PROBATO_ADMIN_PASSWORD: example-password

      DATASOURCE_HOST: postgres-dev
      DATASOURCE_PORT: 5432
      DATASOURCE_DATABASE: probato
      DATASOURCE_USERNAME: root
      DATASOURCE_PASSWORD: root

      MINIO_HOST: minio-dev
      MINIO_PORT: 9000
      MINIO_USERNAME: admin
      MINIO_PASSWORD: admin123
      MINIO_BUCKET: probato

      EMAIL_ADDRESS: [email protected]
      EMAIL_PASSWORD: example-password
      EMAIL_SMPT_HOST: smtp.example.com
      EMAIL_SMPT_PORT: 587

⁠Project

Documentation:

https://probato.org/

Official repository:

https://github.com/probato-team

⁠License

This project is distributed according to the terms defined in the official repository.

Tag summary

Content type

Image

Digest

sha256:2759a1a73…

Size

144.3 MB

Last updated

7 months ago

docker pull probato/probato-manager