Skip to main content

robotframework-PlatynUI

PyPI - Version PyPI - Python Version


Table of Contents

Disclaimer

This project is still under development and should not be used productively yet.

At the current state expect:

  • bugs
  • missing features
  • missing documentation

Feel free to contribute, create issues, provide documentation or test the implementation.

Project Description

PlatynUI is a library for Robot Framework, providing a cross-platform solution for UI test automation. Its main goal is to make it easier for testers and developers to identify, interact with, and verify various UI elements.

We aim to provide a Robot Framework-first library.

Why PlatynUI?

  • Cross-platform capability with consistent API across Windows, Linux, and MacOS
  • Direct access to native UI elements
  • Simplified element identification
  • Builtin ui spy tool

Testable Frameworks

  • Linux
    • X11
    • AT-SPI2
  • Windows
    • Microsoft UI Automation (UIA)
  • MacOS
    • Accessibility API

Extendable for any other ui technologies.

Installation

pip install robotframework-platynui

Spy Tool

After installation, start the spy tool on the command line with this command:

PlatynUI.Spy
  • Start any application
  • Identify elements and properties in your application
  • Access elements with it's properties and build locators to access and simulate ui applications

Demo

Application Example

@locator(name="Rechner")
class CalculatorWindow(Window):
    @property
    @locator(AutomationId="num5Button")
    def n5(self) -> Button: ...
    @property
    @locator(AutomationId="num6Button")
    def n6(self) -> Button: ...
    @property
    @locator(AutomationId="plusButton")
    def plus(self) -> Button: ...
    @property
    @locator(AutomationId="equalButton")
    def equal(self) -> Button: ...
*** Settings ***
Library     PlatynUI
Variables   apps.calculator

*** Test Cases ***
Test Addition Of Two Numbers
    Activate    ${calculator.n5}
    Activate    ${calculator.plus}
    Activate    ${calculator.n6}
    Activate    ${calculator.equal}
    Get Text    ${calculator.result}    should be    11

Roadmap

Roadmap will soon be displayed here

Contributing

We welcome contributions to the project! Here are some ways you can contribute:

  • Report Bugs: Use GitHub Issues to report bugs.
  • Suggest Features: Use GitHub Issues to suggest new features.
  • Submit Pull Requests: Fork the repository, make your changes, and submit a pull request. Please ensure your code follows our coding standards and includes tests.

Contribution guidelines are currently in creation and will be available soon.

Setup Dev Environment

If you want to start now, you can setup a dev environment with following steps:

  • Prerequisites:

    • .NET 8.0
    • Python 3.10 or higher
    • Hatch
  • Clone the repository from Github

  • Create Hatch environment (also creates the .NET environment)

    cd robotframework-PlatynUI
    hatch env create
    

Versioning

We use Semantic Versioning for versioning. For the versions available, see the tags on this repository.

Changelog is maintained using conventional commits.

License

robotframework-PlatynUI is distributed under the terms of the Apache 2.0 license.

Metadata

Release files for robotframework-PlatynUI 0.9.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for robotframework-PlatynUI 0.9.2
File
robotframework_platynui-0.9.2-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
robotframework_platynui-0.9.2-cp313-cp313-musllinux_1_2_x86_64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-64 Details
robotframework_platynui-0.9.2-cp313-cp313-manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64 Details
robotframework_platynui-0.9.2-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
robotframework_platynui-0.9.2-cp312-cp312-musllinux_1_2_x86_64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ x86-64 Details
robotframework_platynui-0.9.2-cp312-cp312-manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64 Details
robotframework_platynui-0.9.2-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
robotframework_platynui-0.9.2-cp311-cp311-musllinux_1_2_x86_64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ x86-64 Details
robotframework_platynui-0.9.2-cp311-cp311-manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64 Details
robotframework_platynui-0.9.2-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
robotframework_platynui-0.9.2-cp310-cp310-musllinux_1_2_x86_64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ x86-64 Details
robotframework_platynui-0.9.2-cp310-cp310-manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ x86-64 Details

Total release size: 189.6 MB

Release files / robotframework_platynui-0.9.2-cp313-cp313-win_amd64.whl

Download URL robotframework_platynui-0.9.2-cp313-cp313-win_amd64.whl
Size 15.9 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
301258148f5feb9419f8d6d4a652a8066660fe3454ad0165d1d5dd493f1f7605
BLAKE2b-256 checksum
How to use checksums
b3f9e47cabd55880b7dbe284e0e9e91952c72591abc914c2fa725464fd9c5c29
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-httpx/0.28.1

Release files / robotframework_platynui-0.9.2-cp313-cp313-musllinux_1_2_x86_64.whl

Download URL robotframework_platynui-0.9.2-cp313-cp313-musllinux_1_2_x86_64.whl
Size 16.8 MB
Tags CPython 3.13 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
bbb8f77ef7b1a9fbdc15953b2a8df047567c2164979779ed500c56a51538b5eb
BLAKE2b-256 checksum
How to use checksums
a0924611f0aaad8f0a26e8e1229499cf5b11147ef9d1c65b8a2a5b9cbb3c1706
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-httpx/0.28.1

Release files / robotframework_platynui-0.9.2-cp313-cp313-manylinux_2_28_x86_64.whl

Download URL robotframework_platynui-0.9.2-cp313-cp313-manylinux_2_28_x86_64.whl
Size 14.7 MB
Tags CPython 3.13 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
942150c6eed42523f03f27ff2b932d2f15a23a89dd66365027a29d67d2b67f43
BLAKE2b-256 checksum
How to use checksums
b7ac99e7098fd64b395056779ca7c2acb15a69ff75aba9c705160ef4bbd2ff51
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-httpx/0.28.1

Release files / robotframework_platynui-0.9.2-cp312-cp312-win_amd64.whl

Download URL robotframework_platynui-0.9.2-cp312-cp312-win_amd64.whl
Size 15.9 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
86c1a557eda1271bc3c372187f26e8e00f7e73355521d3b6962fae6a4a6e6f56
BLAKE2b-256 checksum
How to use checksums
07d7235f536fd541577f9f96f76cb22a3cfd4e0d067e03bd6f337476fb50bd30
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-httpx/0.28.1

Release files / robotframework_platynui-0.9.2-cp312-cp312-musllinux_1_2_x86_64.whl

Download URL robotframework_platynui-0.9.2-cp312-cp312-musllinux_1_2_x86_64.whl
Size 16.8 MB
Tags CPython 3.12 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
8b56ce23a36419c4d8020297150b24eaf9e074d0fd743226eefc78389925ee59
BLAKE2b-256 checksum
How to use checksums
ff33c7cced1f479563afd11b19f4f64e10093d1cca969caf138ad96cbcb7fa7d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-httpx/0.28.1

Release files / robotframework_platynui-0.9.2-cp312-cp312-manylinux_2_28_x86_64.whl

Download URL robotframework_platynui-0.9.2-cp312-cp312-manylinux_2_28_x86_64.whl
Size 14.7 MB
Tags CPython 3.12 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
1e0f779df5f9889346aaf0512858a3d6121cfd7711c1380cb8b2e91e29fd5e5e
BLAKE2b-256 checksum
How to use checksums
af4f816441a5136af18c4ebbdd29f89c1f4f997c40016b332f0b78a51ab66bcb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-httpx/0.28.1

Release files / robotframework_platynui-0.9.2-cp311-cp311-win_amd64.whl

Download URL robotframework_platynui-0.9.2-cp311-cp311-win_amd64.whl
Size 15.9 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
df39deab887be68a512ff5d389c2acfb3291686c181e2f957ec8c2503a87c51f
BLAKE2b-256 checksum
How to use checksums
d57eed5cad8f3ee4b561521104243ea698e99c866528d696d8a48e8fe53a71cd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-httpx/0.28.1

Release files / robotframework_platynui-0.9.2-cp311-cp311-musllinux_1_2_x86_64.whl

Download URL robotframework_platynui-0.9.2-cp311-cp311-musllinux_1_2_x86_64.whl
Size 16.8 MB
Tags CPython 3.11 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
62547f32d9d32a439218fdaf39d04a3d792de1a343f2030ea6a2d918fee349ec
BLAKE2b-256 checksum
How to use checksums
ce37d738d3051bf5630d208e23c98e78347dd2bca6a816ae6a20b22f9ff1476b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-httpx/0.28.1

Release files / robotframework_platynui-0.9.2-cp311-cp311-manylinux_2_28_x86_64.whl

Download URL robotframework_platynui-0.9.2-cp311-cp311-manylinux_2_28_x86_64.whl
Size 14.7 MB
Tags CPython 3.11 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
ddce8b448ee2bda278cc60c0ce261851831579d61de9b2c5466b5867c1bd19d2
BLAKE2b-256 checksum
How to use checksums
b049795dd7fe3f770c22e1bf16d3ee39a903db8701a3b2a94ab594176ab23b72
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-httpx/0.28.1

Release files / robotframework_platynui-0.9.2-cp310-cp310-win_amd64.whl

Download URL robotframework_platynui-0.9.2-cp310-cp310-win_amd64.whl
Size 15.9 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
9ceaa27e1bda25e1e179222d5a2a435ce90c6c04d3b7a4341e1a99e39979fefb
BLAKE2b-256 checksum
How to use checksums
3e93573cd34e133cea20a66073771d5f3a81293258ae846c8cfaa01e4a0f301a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-httpx/0.28.1

Release files / robotframework_platynui-0.9.2-cp310-cp310-musllinux_1_2_x86_64.whl

Download URL robotframework_platynui-0.9.2-cp310-cp310-musllinux_1_2_x86_64.whl
Size 16.8 MB
Tags CPython 3.10 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
c02f2afac5e95cb29d136875a03f06f28149a84115c715e8fa7c054b5186c9c4
BLAKE2b-256 checksum
How to use checksums
7184a7e0a6a22364640ef01e63de721d750836f1d3ca98bcc2c7ca64a37ddc3c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-httpx/0.28.1

Release files / robotframework_platynui-0.9.2-cp310-cp310-manylinux_2_28_x86_64.whl

Download URL robotframework_platynui-0.9.2-cp310-cp310-manylinux_2_28_x86_64.whl
Size 14.7 MB
Tags CPython 3.10 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
4b72894f5cea0a0f0ec1678e465e0b113ec86e31264fe8285ddf6a7fa97085fa
BLAKE2b-256 checksum
How to use checksums
56eed5f587252e641162cb0740132ef073c4c948c7346a10bdfc6d18081494a9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-httpx/0.28.1
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page