Skip to main content

Introduction

autoinsight is a UI automation library for window. It is aim to provide simplified workflow to the automation developers to help them create an easy to maintain and robust test scripts.

It is focus on Windows in the recent releases. It will be migrate to Linux in the future.

Contribute to this project

Requirements

  • OS Window

  • Python 3.10+ 32/64 bit

  • Install Google Tesseract 32/64 bit tesseract wiki

    Add tesseract.exe into the system environment variable PATH

  • Install pywin32 pywin32 release

Installation

  • Install with pip
$ pip install autoinsight

Quick demo

from autoinsight import Button, WindowOS

def demo():
    camera = WindowOS().launchApp("camera")
    camera.setCurrent()
    Button("take photo").click()
    camera.close()

if __name__ == '__main__':
    demo()

Configuration

Development

Setup development environment

  • Setup
$ pip install -r requirements-dev.txt
  • Install Google Tesseract OCR

https://tesseract-ocr.github.io/tessdoc/Installation.html

Windows prebuilt package https://github.com/UB-Mannheim/tesseract/wiki

  • Run all test
$ nose2
  • validate code syntax before commit
$ flake8

Build

  • Install the build dependency
$ python -m pip install --upgrade pip
$ python -m pip install -r requirements-dev.txt
$ python -m build

Test

  • Run unit test on local machine before push to the repository
$ nose2
  • Create a new test module with add the init.py to a new folder under the ./tests
  • Name the test file with test_*.py
  • Make sure each test case inherit from the unittest.TestCase
  • Test

Document and Help

  • Follow syntax of the Sphinx project

Roadmap

  • 0.0.1 [Current version 0.0.8]

    1. Init the project
  • 1.0.0

    1. Basic windows UI automation features

    2. Basic image based identification features

    3. Keyboard mouse handling etc.

    4. In the first version it will be built like a glue to the existing automation libraries like pywinauto, pyautogui etc.

    5. Action logging

    6. Snapshot

    7. Screen recording

    8. Support Google Chrome and Microsoft Edge interoperation

    9. OS interoperation

    10. Driver interoperation

    11. Integrate with image identification and computer vision

  • 2.0.0

    1. Integrate with machine learning identification
    2. Integrate other browsers
    3. Add mobile support
    4. Integrate with cloud ML APIs
  • 3.0.0

    1. Support NLP script
    2. Add GUI
  • 4.0.0

    1. Support record and replay
  • 5.0.0

    1. Support game automation

Copyrights

Apache Software License

Metadata

Release files for autoinsight 0.1.0

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

Source distribution (sdist)

Source distribution for autoinsight 0.1.0
File Size Uploaded Provenance
autoinsight-0.1.0.tar.gz 43.2 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for autoinsight 0.1.0
File Interpreter ABI Platform
autoinsight-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 117.0 kB

Release files / autoinsight-0.1.0.tar.gz

Download URL autoinsight-0.1.0.tar.gz
Size 43.2 kB
Tags Source
SHA-256 checksum
How to use checksums
a0df98e366b72d53298ab0a846efdf9d7d0292e2990226e07cf1d77fbb061438
BLAKE2b-256 checksum
How to use checksums
9b3965d1f949d7218af9ab68367df2f4fc8ac92554a0278f23011a19e0039f79
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.12.2

Release files / autoinsight-0.1.0-py3-none-any.whl

Download URL autoinsight-0.1.0-py3-none-any.whl
Size 73.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e8ed9cc778822edcbe2b073b06619b53fe8ed1bd1237f6d9c54917c1a8353166
BLAKE2b-256 checksum
How to use checksums
b4a852c0968247b2f3b298652920abd7b03fb711535d9ce88dbab340678ebb45
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.12.2

Security for autoinsight 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

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