All Projects → Rahix → tbot

Rahix / tbot

Licence: GPL-3.0 license
Automation/Testing tool for Embedded Linux Development

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to tbot

flutter-elinux
Flutter tools for embedded Linux (eLinux)
Stars: ✭ 139 (+157.41%)
Mutual labels:  embedded-linux
flutter-elinux-plugins
Flutter plugins for embedded Linux (eLinux)
Stars: ✭ 21 (-61.11%)
Mutual labels:  embedded-linux
dotfiles
My personal app/env configs and dotfiles.
Stars: ✭ 27 (-50%)
Mutual labels:  developer-tools
EnvCLI
Don't install Node, Go, ... locally - use containers you define within your project. If you have a new machine / other contributors you just have to install docker and envcli to get started.
Stars: ✭ 93 (+72.22%)
Mutual labels:  developer-tools
nanobox-rails
Quickly set up a Ruby on Rails app on Nanobox, the ideal platform for developers. With Nanobox, Rails app developers can set up instant, isolated development environments that can be shared among team members. Rails apps created using Nanobox can be automatically deployed to AWS, Azure, Google Cloud, and other cloud hosts without the need for de…
Stars: ✭ 19 (-64.81%)
Mutual labels:  developer-tools
android-trinity
android-trinity is tiny proactive framework with much of the scaffolding code required to start a new Android Application.
Stars: ✭ 44 (-18.52%)
Mutual labels:  developer-tools
fusee-nano
A minimalist re-implementation of the Fusée Gelée exploit (http://memecpy.com), designed to run on embedded Linux devices. (Zero dependencies)
Stars: ✭ 49 (-9.26%)
Mutual labels:  embedded-linux
AutoBrew
AutoBrew: Homebrew deployments made easy
Stars: ✭ 71 (+31.48%)
Mutual labels:  developer-tools
devbuddy
Setup your projects in a consistent way. Help other devs onboard easily!
Stars: ✭ 49 (-9.26%)
Mutual labels:  developer-tools
legesher
Because language shouldn't be a barrier to code
Stars: ✭ 29 (-46.3%)
Mutual labels:  developer-tools
agent
This repository contains Nanny-On agent source codes. Anyone can contribute to write and update the codes. Please join us.
Stars: ✭ 14 (-74.07%)
Mutual labels:  embedded-linux
laminas-developer-tools
Module for developer and debug tools for use with laminas-mvc applications.
Stars: ✭ 19 (-64.81%)
Mutual labels:  developer-tools
portal
An api-driven, in-kernel layer 2/3 load balancer.
Stars: ✭ 101 (+87.04%)
Mutual labels:  developer-tools
feater
Tool for rapid deployment of selected features of your web application to isolated testing or demo environments.
Stars: ✭ 27 (-50%)
Mutual labels:  developer-tools
hubi
Humanitarian ubiquitous language helper
Stars: ✭ 17 (-68.52%)
Mutual labels:  developer-tools
embedded-software-skills
Skills/Knowledge required to become a champion Embedded Software Developer.
Stars: ✭ 150 (+177.78%)
Mutual labels:  embedded-linux
replay-csharp
An editable C# REPL (Read Eval Print Loop) powered by Roslyn and .NET Core
Stars: ✭ 69 (+27.78%)
Mutual labels:  developer-tools
mixed-content-scanner-cli
A cli tool to check your site for mixed content
Stars: ✭ 82 (+51.85%)
Mutual labels:  developer-tools
TyStrings
strings file tool for iOS / macOS developers
Stars: ✭ 15 (-72.22%)
Mutual labels:  developer-tools
wordup-code
Visual Studio Code extension for wordup that makes it easy to develop, manage and export WordPress plugins or themes.
Stars: ✭ 12 (-77.78%)
Mutual labels:  developer-tools

tbot
Python 3.6 Checked with mypy Code style: black tbot selftest CI
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

pip3 install --user -U git+https://github.com/rahix/[email protected]

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

Completions

tbot supports command line completions. Install them with the following commands:

curl --create-dirs -L -o ~/.local/lib/tbot/completions.sh https://github.com/Rahix/tbot/raw/master/completions.sh
echo "source ~/.local/lib/tbot/completions.sh" >>~/.bashrc

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.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].