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.4.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.4-py3-none-any.whl (21.7 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ha4t-0.1.4.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.4.tar.gz
Algorithm Hash digest
SHA256 cfe09600889128c7a60bb2b44da7d1e5960d62bfad0bf80de9c7f58c14c89928
MD5 704fa163576a6373f6a78cd5ce239f60
BLAKE2b-256 63015cc6e2e9f7bc393d4d47a6fea672461beb96887af3909845f4b36d5cf158

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ha4t-0.1.4-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.4-py3-none-any.whl
Algorithm Hash digest
SHA256 6716d709da0488dc8527552ef042dab16dbe21848f16268ad2b07205a53c0574
MD5 da983fc1bee7b19cfe9458dd97c97d7a
BLAKE2b-256 cd6eae3f3331c61319cf23f3b2c6670ec06a587d58bd6fc94914e34d51d75232

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