Skip to main content

Tempalte project for handling RobotFramework tests projects using python.

Project description

py-robot-template

Codecov CI

py-robot-template is a template project demonstrating how to create a Python package for use with RobotFramework.

Features

  • Example of building a custom RobotFramework library in Python
  • Simple test versioning approach
  • Instructions for building and using as a command-line tool
  • Uses uv for environment management

Getting Started

  1. Clone the repository:
    git clone https://github.com/your-username/py-robot-template.git
    
  2. Create a virtual environment using uv (Python 3.11+ required):
    uv venv
    
  3. (Optional) Install development dependencies:
    uv pip install -e ".[dev]"
    

Running Tests with uv

To run unit tests with coverage and generate a coverage report:

uv run coverage run --source=src/py_robot_template -m unittest discover tests/unit
uv run coverage xml

To view the coverage report in the terminal:

uv run coverage report

To run RobotFramework tests:

uv run robot tests/robot

Project Structure

  • src/py_robot_template - Python library code
  • tests/robot - RobotFramework test suites
  • tests/unit - Unit tests for Python code

Contributing

Contributions are welcome! Before starting development:

  1. Install uv:
    pip install uv
    
  2. Create a virtual environment using uv:
    uv venv
    
  3. Activate the virtual environment:
    • On Unix/macOS:
      source .venv/bin/activate
      
    • On Windows:
      .venv\Scripts\activate
      
  4. Install pre-commit hooks:
    pre-commit install
    
  5. (Optional) Run all hooks manually on all files:
    pre-commit run --all-files
    

Pre-commit will automatically check your code before every commit.

To contribute:

  1. Fork this repository.
  2. Create a new branch for your feature or fix:
    git checkout -b feature/your-feature-name
    
  3. Make your changes and add tests if needed.
  4. Commit your changes:
    git commit -am "Add your feature description"
    
  5. Push to your fork:
    git push origin feature/your-feature-name
    
  6. Open a pull request describing your changes.

Please ensure your code follows the existing style and passes all tests before submitting a pull request.

Code Style & Checks

  • To run ruff linter:
    ruff check .
    
  • To format code with ruff:
    ruff format .
    
  • To run mypy type checks:
    mypy .
    

License

This project is licensed under the MIT License.

This project supports Python 3.11 and newer. All checks are run for Python 3.11, 3.12, and 3.13 in CI.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

py_robot_template-0.1.1.tar.gz (20.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

py_robot_template-0.1.1-py3-none-any.whl (3.8 kB view details)

Uploaded Python 3

File details

Details for the file py_robot_template-0.1.1.tar.gz.

File metadata

  • Download URL: py_robot_template-0.1.1.tar.gz
  • Upload date:
  • Size: 20.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for py_robot_template-0.1.1.tar.gz
Algorithm Hash digest
SHA256 99e413a780041da25326b9e2b9f566ee8952021371479d524e8344cfb4592fba
MD5 f54651619d4bc6bf0d6048f3f6aec775
BLAKE2b-256 dee685dae1057f69cbcec7c6634a9c8f757d5ffd86dd3aace719d5acb394e317

See more details on using hashes here.

Provenance

The following attestation bundles were made for py_robot_template-0.1.1.tar.gz:

Publisher: release.yml on MarcinMaciaszek/py-robot-template

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file py_robot_template-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for py_robot_template-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 07ff2f7500e3f93741d4ad865e6ed53af912aafb61ce2c45c59109be1a1a7afd
MD5 2a5ba2e7592a6066d7a3dc2c564d6c5c
BLAKE2b-256 40d175a33ab9864223b6d1d6945061ce0e4dbfed14189dcd9120368b8d054a97

See more details on using hashes here.

Provenance

The following attestation bundles were made for py_robot_template-0.1.1-py3-none-any.whl:

Publisher: release.yml on MarcinMaciaszek/py-robot-template

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page