https://github.com/jayadamsmorgan/ltf
Testing & Automation Framework in Lua
https://github.com/jayadamsmorgan/ltf
automation-framework automation-test harness harness-framework lua robotframework testing testing-automation testing-automation-framework testing-framework testing-library testing-tools
Last synced: 28 days ago
JSON representation
Testing & Automation Framework in Lua
- Host: GitHub
- URL: https://github.com/jayadamsmorgan/ltf
- Owner: jayadamsmorgan
- License: apache-2.0
- Created: 2025-05-13T01:21:24.000Z (6 months ago)
- Default Branch: master
- Last Pushed: 2025-09-29T16:40:19.000Z (about 1 month ago)
- Last Synced: 2025-09-29T18:36:23.633Z (about 1 month ago)
- Topics: automation-framework, automation-test, harness, harness-framework, lua, robotframework, testing, testing-automation, testing-automation-framework, testing-framework, testing-library, testing-tools
- Language: C
- Homepage:
- Size: 2.35 MB
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# TAF
**A Modern Testing & Automation Framework in Lua**
TAF is a framework for writing functional tests and automations (AT, ATDD, RPA, etc.) using the simple and powerful Lua programming language. It is designed for both developer and QA workflows, providing the tools needed for robust testing of APIs, web frontends, and external hardware.
Leveraging the simplicity of Lua for test scripting and the raw performance of a C-based core engine, **TAF is a reliable, modern, and _blazingly fast_ testing framework.**
## Key Features
* **๐ป Interactive Terminal UI:** Get a real-time, organized view of your test execution, including progress, timings, and live log output.
* **โ๏ธ Simple & Expressive Syntax:** Define tests with a clear and minimal API (`taf.test(...)`) that gets out of your way.
* **๐ Batteries-Included Libraries:** A rich set of built-in modules for common automation tasks, including:
* **WebDriver:** Browser automation for end-to-end testing.
* **HTTP Client:** A powerful, low-level client for API testing.
* **Process Management:** Run and interact with external command-line tools.
* **Serial Communication:** Test hardware and embedded devices.
* **๐ท๏ธ Flexible Tagging System:** Categorize your tests with tags and selectively run suites from the command line.
* **๐งน Guaranteed Teardown:** Use the elegant `taf.defer` function to ensure resources are always cleaned up, whether a test passes or fails.
* **๐๏ธ Detailed Logging:** Automatically generates human-readable text logs and machine-readable JSON logs for every test run, perfect for CI/CD integration and reporting.
## Overview

## Dive Deeper: Full Documentation
This project is fully documented to help you get the most out of TAF. All documentation can be found in the [`docs/`](./docs) directory.
### Quick Links
* **Getting Started:** [Project Setup & Your First Test](./docs/PROJECT_SETUP.md)
* **CLI Reference:** [Command-Line Usage](./docs/CLI.md)
* **Core Libraries:** [API Reference](./docs/TAF_LIBS/README.md)
* **Key Concepts:**
* [Logging System](./docs/LOGGING.md)
* [The Tag System](./docs/TAG_SYSTEM.md)
* [Test Teardown with `defer`](./docs/TEST_TEARDOWN.md)
## Installation
### [Homebrew](https://brew.sh) (MacOS / Linux)
```
brew tap jayadamsmorgan/taf
brew install taf
```
### Build from source
Please see the detailed **[Build Instructions](./BUILD.md)**.
## Contributing
Contributions are welcome!
Whether it's bug reports, feature requests, or code contributions, please feel free to open an issue or submit a pull request.
We would love to hear from you!