Skip to main content

跨平台的UI自动化框架,适用于混合型app

Project description

HA4T 🐍

PyPI version Documentation Status

HA4T (Hybrid App For Testing Tool) 是一个跨平台的UI自动化框架,适用于混合型app、web和原生app等。该框架基于airtest aircv模块、飞浆OCR、WS、uiautomator2和facebook_wda进行开发。 (目前仅个人开发和使用,可能存在一些问题~)

特性

  • 跨平台支持:适用于iOS、Android和Web应用
  • 多种定位方式:支持图像识别、OCR文字识别、webview定位、原生控件定位等
  • 灵活的操作API:提供点击、滑动、输入等常用操作

安装

使用pip安装HA4T:

pip install ha4t

快速开始

以下是一个简单的示例,展示如何使用HA4T进行基本操作:

# 原生定位
from ha4t import connect
from ha4t.api import *

connect(platform="android")

# 启动应用
start_app(activity="com.xxx.xxx.MainActivity", app_name="com.xxx.xxx")

# 等待
wait(text="添加新项目", timeout=30)

# orc 文字识别定位 中/英
click("添加新项目")
# 图像匹配定位
click(image="./添加新项目.png")
from ha4t.aircv.cv import Template

click(Template("./添加新项目.png"))
# u2 元素定位
click(text="添加新项目")

# webview 定位
from ha4t.cdp.cdp import CDP
from ha4t.cdp.server import CdpServer
from ha4t.cdp.by import By

cdp_server = CdpServer()
cdp_server.start_server_for_android_app(device.driver.adb_device)
cdp = CDP(cdp_server.ws_endpoint)

window = cdp.get_page(["homePage"])
time.sleep(3)
window.click((By.TEXT, "新建项目"))

详细文档(未完善)

查看详细文档以获取更多信息,包括:

  • 完整的API参考
  • 高级用法指南
  • 最佳实践和技巧

问题和支持

如果您遇到任何问题或需要支持,请提交一个issue

许可证

本项目采用MIT许可证。详情请见LICENSE文件。

致谢

HA4T 的开发得益于以下开源项目:

如果您觉得HA4T对您有帮助,请考虑给项目一个星标 ⭐️

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

ha4t-0.1.3.tar.gz (21.6 MB view details)

Uploaded Source

Built Distribution

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

ha4t-0.1.3-py3-none-any.whl (21.7 MB view details)

Uploaded Python 3

File details

Details for the file ha4t-0.1.3.tar.gz.

File metadata

  • Download URL: ha4t-0.1.3.tar.gz
  • Upload date:
  • Size: 21.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.24 {"installer":{"name":"uv","version":"0.9.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for ha4t-0.1.3.tar.gz
Algorithm Hash digest
SHA256 4238324b814176150111f66eb15a720f9e400a756bd01656ececea13536d06ef
MD5 cfb73f0e2bff3c1ec241bf7686c8df65
BLAKE2b-256 d11c00f4b37e4aad02ec2805201318178df116d9356b4752cf05434d39ad5cf7

See more details on using hashes here.

File details

Details for the file ha4t-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: ha4t-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 21.7 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.24 {"installer":{"name":"uv","version":"0.9.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for ha4t-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 6f7deec3e5c7b8b8bfeaf5ec02b7fc48cb0b76e0fbe5977ea6c51dc621c33146
MD5 65787f37e271ed72effa015dedb84112
BLAKE2b-256 2423ea795d4da4c6675e8e74ea3a4587858bd6873dae438566d09d650bcf006b

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