Skip to content

Lothiraldan/balto

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Logo of Balto BALTO

All Contributors

BAlto is a Language independent Test Orchestrator is an unique tool to drive all your test-runners with one common interface.

Installation

Install balto with pipx:

pipx install balto

You should see at the end of the command:

  These binaries are now globally available
    - balto
    - balto-curses
    - balto-server
done! ✨ 🌟 ✨

It is highly recommended to avoid installing Balto in either your global Python environment or a virtual environment as it might causes conflicts with some dependencies.

Usage

To use it, point balto to a directory containing a .balto.toml file:

balto tests/

The .balto.toml file should look like:

name = "Acceptance Test Suite Subprocess"
tool = "pytest"

If you just want to give Balto a try, you can use the --tool to indicate which tool you want to use. For example:

balto --tool pytest tests

The tool must be one of the supported one, you can see the list here: https://github.com/lothiraldan/litf#compatible-emitters

You can test balto against examples for supported test runners. Clone this repository and launch balto against one of the examples directories. For pytest, launch:

balto examples/pytest/

For more help:

balto --help

Development

Balto is composed of two components: the server and the web interface.

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms. Please report unacceptable behavior to lothiraldan@gmail.com.

Balto-server

Balto-server is a Python 3.7 project using Asyncio. To build the development version, first create a virtualenv (or equivalent):

virtualenv .venv
source .venv/bin/activate

Install the project in development mode:

pip install -e .

Then start the server:

balto-server --debug examples/pytest/

The server will start on port 8889.

Web interface

The web interface is a React project communicating with the server using WebSockets. You can start developing on it with these instructions:

cd balto/web_interfaces/balto_react
yarn start

The web interface is then available on http://localhost:3000/ and will connect to the server started before.

Warning: the WebSocket doesn't auto-reconnect yet, sometimes your React modification requires you to reload your browser tab.

Contributors

Thanks goes to these wonderful people (emoji key):

 Boris Feld
Boris Feld

πŸ’» 🎨 πŸ“– πŸ€” πŸ“’
Elias Dorneles
Elias Dorneles

πŸ’» πŸ›
Paul Morelle
Paul Morelle

πŸ’»

This project follows the all-contributors specification. Contributions of any kind welcome!