当前位置: 首页 > news >正文

域名命名网站湖南网站推广

域名命名网站,湖南网站推广,赣州城乡建设局网站,中国交通建设集团有限公司网站1、测试框架选择 hdc:类似 android 系统的 adb 命令,提供设备信息查询,包管理,调试相关的命令ohos.UiTest:鸿蒙 sdk 的一部分,类似 android sdk 里的uiautomator,基于 Accessibility 服务&…

1、测试框架选择

  • hdc:类似 android 系统的 adb 命令,提供设备信息查询,包管理,调试相关的命令
  • @ohos.UiTest:鸿蒙 sdk 的一部分,类似 android sdk 里的uiautomator,基于 Accessibility 服务,提供模拟 UI 操作的能力。但是需要用arkTS语言来写自动化 case,并且用例需要打包到被测 app 里面
  • hypium:鸿蒙官方的自动化框架,功能比较完善,可以基于 python 编写自动化 case
  • hmdriver2  一个鸿蒙自动化测试py库,安装方便,语法简洁

鸿蒙自动化测试的 文档中心

 文档中心hmdriver2 文档:https://github.com/codematrixer/hmdriver2

查看了文档后,发现hypium是官方的自动化框架,但是安装环境比较复杂,并且他是一整套的测试框架,包括了用例套件的管理与执行等,算是比较重量级的。

hmdriver2是一个轻量级的库,流程等都不复杂,先体验一下这个

2、环境配置

  1. 配置鸿蒙HDC环境(等价于 android 端的 adb)
    1. 下载 Command Line Tools 并解压
    2. hdc文件在command-line-tools/sdk/HarmonyOS-NEXT-DB2/openharmony/toolchains目录下
    3. 配置环境变量,macOS 为例,在~/.bash_profile 或者 ~/.zshrc 文件中添加
export HM_SDK_HOME="/Users/develop/command-line-tools/sdk/HarmonyOS-NEXT-DB2"  //请以sdk实际安装目录为准
export PATH=$PATH:$HM_SDK_HOME/hms/toolchains:$HM_SDK_HOME/openharmony/toolchains
export HDC_SERVER_PORT=7035

电脑插上手机,开启 USB 调试,确保执行hdc list targets 可以看到设备序列号

hdc常用命令  文档中心

2、安装hmdirver2 基础库

pip3 install -U hmdriver2

如果需要使用屏幕录屏 功能,则需要安装额外依赖opencv-python

pip3 install -U "hmdriver2[opencv-python]"
// 由于`opencv-python`比较大,因此没有写入到主依赖中,按需安装

3、代码编写

导入包后就可以连接设备,启动app,当前以安居客发布为例

from hmdriver2.driver import Driverd = Driver("FMR0223C13000076")
d.start_app("com.anjuke.home", "EntryAbility")

然后就可以进行元素定位和操作

元素定位支持

  • 控件查找(联合查找,模糊查找,相对查找)
  • 控件信息获取
  • 控件点击,长按,拖拽,缩放
  • 文本输入,清除
  • 获取控件树

控件查找支持这些by属性

  • id
  • key
  • text
  • type
  • description
  • clickable
  • longClickable
  • scrollable
  • enabled
  • focused
  • selected
  • checked
  • checkable
  • isBefore
  • isAfter

定位方式包括普通定位,模糊定位,相当定位

d(text="tab_recrod")d(id="drag")# 定位所有`type`为Button的元素,选中第0个
d(type="Button", index=0)# 定位`type`为Button且`text`为tab_recrod的元素
d(type="Button", text="tab_recrod")# 定位`text`为showToast的元素的前面一个元素
d(text="showToast", isAfter=True) # 定位`id`为drag的元素的后面一个元素
d(id="drag", isBefore=True)

元素操作与信息获取

d(text="tab_recrod").info# output:
{"id": "","key": "","type": "Button","text": "tab_recrod","description": "","isSelected": False,"isChecked": False,"isEnabled": True,"isFocused": False,"isCheckable": False,"isClickable": True,"isLongClickable": False,"isScrollable": False,"bounds": {"left": 539,"top": 1282,"right": 832,"bottom": 1412},"boundsCenter": {"x": 685,"y": 1347}
}d(text="tab_recrod").click()
d(type="Button", text="tab_recrod").click()d(text="tab_recrod").click_if_exists()d(text="tab_recrod").double_click()
d(text="tab_recrod").long_click()# 控件拖拽
componentB: ComponentData = d(type="ListItem", index=1).find_component()
d(type="ListItem").drag_to(componentB)  # 将元素拖动到元素B上# 控件缩放
d(text="tab_recrod").pinch_in(scale=0.5)
d(text="tab_recrod").pinch_out(scale=2)

更多操作请看详细文档https://github.com/codematrixer/hmdriver2或hmdriver2 发布:开启鸿蒙 NEXT 自动化新时代 · 测试之家

另外元素查找可使用 uiviewer工具

安装   pip3 install -U uiviewer

启动   python3 -m uiviewer

打开页面,选择设备,点击connect,连接设备

可查看ui树,定位元素,复制xpath或者rect(元素在屏幕位置)

点击dump hierarchy刷新页面

小demo

from hmdriver2.driver import Driverd = Driver("FMR0223C13000076")
d.start_app("com.anjuke.home", "EntryAbility")
d(text="租房", index=0).click()
for i in range(5):d.swipe(0.5, 0.7, 0.5, 0.5, speed=2000)
d.go_home()

实际可以结合pytest等框架进行用例管理,报告输出等

鸿蒙自动化视频

http://www.15wanjia.com/news/162353.html

相关文章:

  • 成都做网站wordpress审计
  • 山西网站建设运营公司网站建设回访
  • 网站美工设计流程网站免费建站pixiv app
  • 湛江做网站需要什么网站怎么做移动图片大全
  • 论述农产品电商网站建设cho菌主题wordpress
  • 小说网站开发需求分析做网站前端有前途么
  • 提高网站收录河南科兴建设有限公司网站
  • 深圳网站专业建设公司上海sem
  • 网站怎么做优化步骤传奇手游最新下载
  • 外包服务费税率上海网络公司seo
  • 有个网站做彩盒的silverlight做的网站
  • 网站宣传与推广的指导思想阿里云域名怎样做网站
  • 网站建设公司销售wordpress 重装教程视频教程
  • WordPress开VPN访问快seo运营是什么
  • 新手学网站建设解疑与技巧1200例wordpress实现文章目录
  • 跳转到手机网站网站备案技巧
  • 新网网站品牌推广软文200字
  • 网站建设 开发人一丶一一人一一windows 2003做网站
  • 做网站市场报价步登顶网站的pv是什么
  • 网站的软件帮别人做ppt挣钱的网站
  • 做服装外单的网站南京好的网站设计
  • 江苏手机网站建设公司跟网站做流量
  • 免费网站免费无遮挡网站是一个链接的页面结合吗
  • 网站地图插件为客户创建网站必须
  • 北京的做网站的公司wordpress 水墨
  • 中山网站建设sipocmswordpress title背景
  • 个性个人网站模板极简WordPress个人博客主题
  • 做网站iiwokvi设计公司平台哪个好
  • 计算机网站开发课本芯片设计公司
  • 金华英文网站建设网站做2微码