Orbs - an automation framework for Web, Mobile (Appium), and API testing designed to grow with your team
Project description
Orbs
Automation framework that grows with your team
What is Orbs?
Orbs is an automation framework for Web, Mobile (Appium), and API testing designed to grow with your team.
Orbs supports different levels of automation maturity:
- Junior QA engineers can start with visual tools, record-and-playback, reusable keywords, and Studio-based workflows
- Senior engineers can work directly with code, CLI, and CI/CD pipelines without restrictions or license lock-in
Both approaches share the same execution engine and project structure, allowing teams to evolve their automation practices without rewriting tests or migrating frameworks.
Philosophy
1. Tests are software, not scripts
Automation code should be designed, structured, reviewed, and evolved like production code — not copied scripts glued together over time.
2. Explicit is better than implicit
If something runs, it should be obvious:
- what is executed
- from where
- with which configuration
No silent defaults. No hidden behavior.
3. Structure before scale
Orbs enforces structure early so teams don’t pay technical debt later. Scaling automation should feel predictable, not painful.
4. One core, many interfaces
The same execution engine can be accessed via:
- CLI
- REST API
- Orbs Studio (GUI)
Different entry points, same behavior.
5. Tooling should assist, not hide reality
Generators, runners, and spy tools exist to accelerate work — not to obscure how automation actually works.
Table of Contents
- Core Capabilities
- Quick Start
- CLI Overview
- Spy
- Project Structure
- Configuration
- Documentation
- Contributing
- License
Core Capabilities
- 📦 Project scaffolding with
orbs init - 🧱 Clear project structure for large test suites
- ⟳ Test suite, test case, feature, and step generation
- ▶️ Unified runner for
.feature,.yml, and.py - 🌐 REST API server for listing and scheduling executions
- 🕵️ Web & Mobile Spy for element inspection
- ⚙️ Typer-powered CLI
- 🧩 Extensible hooks and listeners
Quick Start
pip install orbs-cli
orbs setup android
orbs init myproject
cd myproject
orbs create-feature login
orbs implement-feature login
orbs run features/login.feature
CLI Overview
orbs setup android
orbs init <project>
orbs create-testsuite <name>
orbs create-testcase <name>
orbs create-feature <name>
orbs implement-feature <name>
orbs run <target>
orbs serve [--port <port>]
orbs spy
Spy
Orbs provides an interactive Web & Mobile Spy, similar to Katalon's Object Spy, for inspecting elements and capturing locators.
orbs spy --web --url=https://example.com
orbs spy --mobile
📖 Full Spy documentation: docs/spy.md
Project Structure
myproject/
├── features/
├── steps/
├── testcases/
├── testsuites/
├── listeners/
├── settings/
└── .env
Configuration
Environment variables and properties are defined explicitly using .env and settings/*.properties.
APP_PORT=5006
SERVER_URL=http://localhost:5006
📖 Full configuration guide: docs/configuration.md
Documentation
Detailed documentation is available under the docs/ directory:
- Philosophy & Concepts - Framework principles and maturity levels
- CLI Reference - Complete command documentation
- Web Testing - Browser automation guide
- Mobile Testing - Android testing with Appium
- API Testing - REST API testing guide
- Spy Tool - Element inspection and capture
- Architecture - Technical design and patterns
Start here: docs/philosophy.md
Contributing
Contributions are welcome.
Please ensure:
- Templates and CLI commands are updated
- Documentation reflects behavior changes
License
Licensed under the Apache License, Version 2.0.
See the LICENSE file for details.
Contact
Built & maintained by Muhamad Badru Salam - QA Engineer (SDET)
- Repository: https://github.com/badrusalam11/orbs-cli
- Pypi: https://pypi.org/project/orbs-cli
- GitHub: https://github.com/badrusalam11
- LinkedIn: https://www.linkedin.com/in/muhamad-badru-salam/
- Email: muhamadbadrusalam760@gmail.com
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file orbs_cli-0.1.4.tar.gz.
File metadata
- Download URL: orbs_cli-0.1.4.tar.gz
- Upload date:
- Size: 72.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0684063b8fbdc1c1c9acb6be3af7f7e7d3c2ec0dde8b7887fa4929dfdf2810f7
|
|
| MD5 |
799ed5dda372d7751cc4f161bb72a4e3
|
|
| BLAKE2b-256 |
d67ea0ba1bcdd62fa556fa116bee82ca774ec3c8d2381eed1e09be4788f86279
|
File details
Details for the file orbs_cli-0.1.4-py3-none-any.whl.
File metadata
- Download URL: orbs_cli-0.1.4-py3-none-any.whl
- Upload date:
- Size: 85.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
99481c462d3de7a515728bff19b9031740735c7a5c0608c3e57fc3c98c958f74
|
|
| MD5 |
41ec2bd324401bb472f6cf8528896466
|
|
| BLAKE2b-256 |
455f8b87cafe60c549fab7c642002c4d11d8f21ec3fe7e184885f64f51f8fcf3
|