A Simplified UI automation package
Project description
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
- Donate
- Contribute code
- Documentation
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]
- Init the project
-
1.0.0
-
Basic windows UI automation features
-
Basic image based identification features
-
Keyboard mouse handling etc.
-
In the first version it will be built like a glue to the existing automation libraries like pywinauto, pyautogui etc.
-
Action logging
-
Snapshot
-
Screen recording
-
Support Google Chrome and Microsoft Edge interoperation
-
OS interoperation
-
Driver interoperation
-
Integrate with image identification and computer vision
-
-
2.0.0
- Integrate with machine learning identification
- Integrate other browsers
- Add mobile support
- Integrate with cloud ML APIs
-
3.0.0
- Support NLP script
- Add GUI
-
4.0.0
- Support record and replay
-
5.0.0
- Support game automation
Copyrights
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file autoinsight-0.1.0.tar.gz
.
File metadata
- Download URL: autoinsight-0.1.0.tar.gz
- Upload date:
- Size: 43.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.12.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a0df98e366b72d53298ab0a846efdf9d7d0292e2990226e07cf1d77fbb061438 |
|
MD5 | 354ab8c230712962721a3d9ed9e483a4 |
|
BLAKE2b-256 | 9b3965d1f949d7218af9ab68367df2f4fc8ac92554a0278f23011a19e0039f79 |
File details
Details for the file autoinsight-0.1.0-py3-none-any.whl
.
File metadata
- Download URL: autoinsight-0.1.0-py3-none-any.whl
- Upload date:
- Size: 73.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.12.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e8ed9cc778822edcbe2b073b06619b53fe8ed1bd1237f6d9c54917c1a8353166 |
|
MD5 | 201f6fa618a005d4c5961ea6757dbc21 |
|
BLAKE2b-256 | b4a852c0968247b2f3b298652920abd7b03fb711535d9ce88dbab340678ebb45 |