Skip to content

zkrx/tbot

 
 

Repository files navigation

tbot
Python 3.6 Checked with mypy Code style: black Build Status
Embedded Test/Automation Tool

tbot is a testing/automation tool that is focused on usage in embedded development. At its core tbot just provides utilities for interaction with remote hosts/targets and an extensive library of routines that are common in embedded development/testing.

tbot aims to be a support for the developer while working on a project and without much modification also allow running tests in an automated setting (CI).

Most info about tbot can be found in its documentation at https://tbot.tools. You can also join our mailing list at lists.denx.de.


Use-cases

tbot can very easily support complex test architectures with many different hosts and boards involved. As an example:

tbot Architecture

Installation

python3 setup.py install --user

If you haven't done it already, you need to add ~/.local/bin to your $PATH.

Completions

tbot supports command line completions. Enable them by adding

source /path/to/tbot/completions.sh

to your .bashrc or equivalent.

Example

Blinks a GPIO Led on your selected target.

import time
import tbot
from tbot_contrib import gpio


@tbot.testcase
@tbot.with_linux
def blink(lnx, pin: int = 18) -> None:
    """Blink the led on pin ``pin``."""

    led = gpio.Gpio(lnx, pin)
    led.set_direction("out")
    for _ in range(5):
        led.set_value(True)
        time.sleep(0.5)
        led.set_value(False)
        time.sleep(0.5)

Credits

Contributing

Help is really appreciated! Please take a look at tbot's contribution guidelines for more info. If you are unsure about anything, please open an issue or consult the mailing list first!

License

tbot is licensed under the GNU General Public License v3.0 or later. See LICENSE for more info.

About

Automation/Testing tool for Embedded Linux Development

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 97.4%
  • Shell 1.3%
  • HTML 1.3%