Skip to main content

Windows GUI testing library for Robot Framework

Project description

Robotframework-FlaUI Library

License
Python Builds (x86)
Python Builds (x64)
Tests
Python python_312 python_313
Robotframework
PyPi

Introduction

Robotframework-FlaUI is a keyword based user interface automation testing library for Windows applications like Win32, WinForms, WPF or Store Apps. It's based on the FlaUI user interface automation library.

Installation

Install the latest stable release:

pip install --upgrade robotframework-flaui

Dependencies and python support

The robot framework FlaUI is supposed to support the current Python 3 versions.

Required dependencies

See dependencies from Documentation

Python.Net Wrapper Issues

Robotframework-Flaui 1.x

  • With the release of Python.Net version 2.5.2, Python 3.9 support was implemented for the first time.
  • However, no official support for Python 3.9 has been released yet.
    • For more information see the issue #1389
  • If there are problems installing the Python.Net library, please use Python 3.8 instead.
  • This is only a potential problem by all robotframework-flaui 1.x versions which are implemented by Python.Net 2.5.2

Robotframework-Flaui 2.x

  • Sometimes an AccessViolationException wil be occure on latest Python.Net Version v3.0.1
    • For more information see the issue #1977
    • A workaround is to set Python's memory allocation environment variable "PYTHONMALLOC=malloc"

Documentation

RFHUB2

RFHUB2 is an opensource project aimed to provide nice and easy way of collecting, browsing and sharing documentation of existing keywords written in RobotFramework and python. Built with Material-UI and FastAPI, served by Uvicorn.

Under docs/keywords are the necessary .XML files to import the keywords.

These can be imported separately according to their version with the RFHUB2-CLI tool or all versions.

rfhub2-cli .\docs\keywords\
rfhub2-cli .\docs\keywords\<VERSION>

GUI Inspector Tools

There are various tools around which help inspecting application that should be ui tested or automated.

Some of them are:

Examples

Examples of use can be found in the atests folder.

Development

Preconditions

  • Install Python, if not already installed.
  • Only Python 3 is supported.
  • Install Robotframework and Python.Net

Dependency installation by Keen.bat

.\keen.bat dependency

Test-Applications

Two test projects were used for the UI automation:

  • FlaUI WPF Test App 'Standard application that contains all common UI elements'
  • Notifier Test App 'Application which closes automatically after a time'

Testing locally TLDR

python -m venv .venv
.venv/Scripts/pip install -r requirements-dev.txt

cd ./atests
../.venv/Scripts/robot -v UIA:UIA3 -d ../result -P ../src -t "Element Should Be Offscreen" Element.robot

Building and testing locally

Use the provided 'Commander Keen' file:

.\keen.bat test

The script automatically builds the:

  • Library as a wheel file stored in the Dist folder
  • Test documentation located in the Docs folder
  • Automatically installs and runs the robot tests of the library and saves the test results in the Result folder

Following arguments are supported:

.\keen.bat <argument>
  • cleanup - Removes all build folders
  • dependency - Install all python dependencies
  • build - Build wheel file
  • install - Install wheel file
  • test - Test robotframework-flaui (UIA2 and UIA3)
  • test_uia2 - Test UIA2 interface usage
  • test_uia3 - Test UIA3 interface usage
  • pylint - Static code analysis for python code
  • robocop - Static code analysis for robotframework code
  • tidy - Formatter for robotframework code

Releasing a new version - Frequent tasks

  • add or update keywords in folders
    • src/FlaUILibrary/flaui/module
    • src/FlaUILibrary/keywords
  • add or update tests in folder atests
  • update version in src/FlaUILibrary/version.py
  • update CHANGELOG.md
    • add a release near the top
    • add the links at the bottom in section ### Added

Acknowledgements

FlaUI

  • Thanks to @Roemer for the passion to create and maintain the FlaUI project.
  • Thanks to FlaUI developers and maintainers for this project.

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

robotframework_flaui-4.0.4.tar.gz (300.6 kB view details)

Uploaded Source

Built Distributions

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

robotframework_flaui-4.0.4-cp313-cp313-win_amd64.whl (328.7 kB view details)

Uploaded CPython 3.13Windows x86-64

robotframework_flaui-4.0.4-cp313-cp313-win32.whl (328.7 kB view details)

Uploaded CPython 3.13Windows x86

robotframework_flaui-4.0.4-cp312-cp312-win_amd64.whl (328.7 kB view details)

Uploaded CPython 3.12Windows x86-64

robotframework_flaui-4.0.4-cp312-cp312-win32.whl (328.7 kB view details)

Uploaded CPython 3.12Windows x86

robotframework_flaui-4.0.4-cp311-cp311-win_amd64.whl (328.7 kB view details)

Uploaded CPython 3.11Windows x86-64

robotframework_flaui-4.0.4-cp311-cp311-win32.whl (328.7 kB view details)

Uploaded CPython 3.11Windows x86

robotframework_flaui-4.0.4-cp310-cp310-win_amd64.whl (328.7 kB view details)

Uploaded CPython 3.10Windows x86-64

robotframework_flaui-4.0.4-cp310-cp310-win32.whl (328.7 kB view details)

Uploaded CPython 3.10Windows x86

robotframework_flaui-4.0.4-cp39-cp39-win_amd64.whl (328.7 kB view details)

Uploaded CPython 3.9Windows x86-64

robotframework_flaui-4.0.4-cp39-cp39-win32.whl (328.7 kB view details)

Uploaded CPython 3.9Windows x86

robotframework_flaui-4.0.4-cp38-cp38-win_amd64.whl (328.6 kB view details)

Uploaded CPython 3.8Windows x86-64

robotframework_flaui-4.0.4-cp38-cp38-win32.whl (328.6 kB view details)

Uploaded CPython 3.8Windows x86

File details

Details for the file robotframework_flaui-4.0.4.tar.gz.

File metadata

  • Download URL: robotframework_flaui-4.0.4.tar.gz
  • Upload date:
  • Size: 300.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.8.10

File hashes

Hashes for robotframework_flaui-4.0.4.tar.gz
Algorithm Hash digest
SHA256 a63ff038e222da53657079dccf9c3e115bc72897debde0ec50797713155f3270
MD5 e50bc7d3fadd2a43c08ea86e4801a632
BLAKE2b-256 9b6d050f3f7d699e4b9ded8ea6c8520d0ea313d6e5551b857c7ff208bddf2608

See more details on using hashes here.

File details

Details for the file robotframework_flaui-4.0.4-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for robotframework_flaui-4.0.4-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 da307a8bf61b1fc4715d68bd045d2d03d3d15c21883ceaeb67181a53d62e8f28
MD5 168585c86353c05e6e49ee8ec0992948
BLAKE2b-256 2e5e8bd484ac8c15af2d80e152d0c7e7bf4db5bf2c11559c46fd98043cee9519

See more details on using hashes here.

File details

Details for the file robotframework_flaui-4.0.4-cp313-cp313-win32.whl.

File metadata

File hashes

Hashes for robotframework_flaui-4.0.4-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 00a6ef2535d43455db0c780d9dffd290f8f991c347978e38bc6531d511eb682c
MD5 24cbffac365634553dba51c3cb1ee7ef
BLAKE2b-256 231536b640d20d8cb70b3b31ab255b43bf85836449927cf961bf5bfce41fcc16

See more details on using hashes here.

File details

Details for the file robotframework_flaui-4.0.4-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for robotframework_flaui-4.0.4-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 07f2abca914b66339d6ca07c9e9e9c2b60e6dd3ebe778d4942fdebad77a26904
MD5 8d6b937c2b940d1a276416a7d1605386
BLAKE2b-256 040dca03f464a11d75acd3f5016fec5bb6bbd22566e3ee6b6a2bdf0694f29494

See more details on using hashes here.

File details

Details for the file robotframework_flaui-4.0.4-cp312-cp312-win32.whl.

File metadata

File hashes

Hashes for robotframework_flaui-4.0.4-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 859ea951ababd9930bee83dbfad95528f4cbf5744cc32053c6609ea80db2e83d
MD5 1f1c034150c84d53e0879305ad7ccc58
BLAKE2b-256 6a021afd0c226bf35df434bf83b765a7cebf33d9d4f17c83dfc2efa17bc922b2

See more details on using hashes here.

File details

Details for the file robotframework_flaui-4.0.4-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for robotframework_flaui-4.0.4-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 31325e98dfce3d5c78202000e79697311741c0fd2f7b761b3c100af800b073f3
MD5 62df507d78b2cd2c05387e45c6f0c336
BLAKE2b-256 9c407d8a3f628af3f39662a2e51cdb1749879855e0e70a6f5b24bc6bcc6201e2

See more details on using hashes here.

File details

Details for the file robotframework_flaui-4.0.4-cp311-cp311-win32.whl.

File metadata

File hashes

Hashes for robotframework_flaui-4.0.4-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 d7688ceee4a1cfef8bdb0181607cc20c888b7e4198ac074e9a9bab5d6016683c
MD5 241bd6b0204d858d0bc0701d5a3a07a7
BLAKE2b-256 4c9945099cbf95518f4c258514b8894adf6bae79fe871f2285a163dfd610ccef

See more details on using hashes here.

File details

Details for the file robotframework_flaui-4.0.4-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for robotframework_flaui-4.0.4-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 17cc617741cfd860f36f532524a177ec7f5d2ec79b6337bae783328212f367c4
MD5 5b0d45941df6e559a8c9fb853020043a
BLAKE2b-256 7b3704d0fb8f90e547e96fc2544d98337aff111642e98d80724a1d229a47e1bc

See more details on using hashes here.

File details

Details for the file robotframework_flaui-4.0.4-cp310-cp310-win32.whl.

File metadata

File hashes

Hashes for robotframework_flaui-4.0.4-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 66fd2fb26d35d1fc1d1d7276fa6b16e30440f7b69ca56b45142e27aa2b681f04
MD5 a400d512b47008d58cabc4d64bae5161
BLAKE2b-256 99d527de92cc7eb9794703e47d97107ba1d923d46442e0391b5f85f8ec157863

See more details on using hashes here.

File details

Details for the file robotframework_flaui-4.0.4-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for robotframework_flaui-4.0.4-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 3591fa4abf3c1e8ab1b0789e3c1922baeb6a32c999991ce03631dca75bd8283e
MD5 75e6cc116a2b64b97aa7f59c323159ee
BLAKE2b-256 6e16d5363ff327496e0bdbd4eb10dc050fcb46b0c5e26ef2d1ea06b76312d21c

See more details on using hashes here.

File details

Details for the file robotframework_flaui-4.0.4-cp39-cp39-win32.whl.

File metadata

File hashes

Hashes for robotframework_flaui-4.0.4-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 dee25e884712bf919e08181fc58b03d453a9ada1aa869d7c6c0fd715ffbe1d70
MD5 54f6c0b7b7493a75f94485a3ce68fb0e
BLAKE2b-256 ad8a732d3c9f155cb9b8418266270298f2de1b5dd8e7cf5f93dfe5efc1295906

See more details on using hashes here.

File details

Details for the file robotframework_flaui-4.0.4-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for robotframework_flaui-4.0.4-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 d8023b75173e92e938d9e206eacfee095187d769671bf3b7674b7257434a5020
MD5 122caee7d4e0d6108aac6fac6926d9cb
BLAKE2b-256 624670a882bea0c71d94ac3422c5c89483fd04a256db437f17333145896d96f9

See more details on using hashes here.

File details

Details for the file robotframework_flaui-4.0.4-cp38-cp38-win32.whl.

File metadata

File hashes

Hashes for robotframework_flaui-4.0.4-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 f377918c16cf3cd4583bf44bd4286175adeb1b89197b9f560bde3de971aeab48
MD5 ddd8ea7bf90c8bc88f300cb72cd1fa00
BLAKE2b-256 6020358bc31acfde98318689e591dea8c70310815319332112e2ea0d0fee9616

See more details on using hashes here.

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