Airtest入门及使用poco控件录制脚本(windows系统-搜索小案例)

airtest 介绍

airtest使用截屏录制脚本和使用poco控件录制脚本。会点python用起来更nice了。

Airtest是网易出品的一款基于图像识别和poco控件识别的一款UI自动化测试工具。

 

  • airtest是一个跨平台的UI自动化测试工具,推出了强大的自动化编辑工具,airtest IDE。  
  • airtest IDE 提供了两个测试框架,airtestpoco
  • airtest是基于图像识别的。
    原理:利用截图的方式,在已展示出的手机界面中寻找所匹配的图片
  • poco是UI自动化框架,提供了丰富的API处理UI上的各类操作。
    原理:类似appium,基于UI控件搜索的自动化测试框架,定位目标控件,然后调用函数方法对目标控件进行操作
  • airtest IDE 创造了极为简单易懂的操作工具,非常适用于没有任何自动化基础的开发测试人员。利用airtest图像识别,可以简单通过点击,选择,截图完成一套UI自动化代码。

airtest 能做什么

   游戏测试     App测试(Android/iOS)     Web测试     Win应用测试

   功能测试流程:需求分析--测试计划--用例设计--测试执行–测试报告

   自动化测试流程:测试用例选择--脚本实现---测试执行---测试报告

airtest 官网

下载地址:http://airtest.netease.com

AirtestIDE的使用教程跟文档:http://airtest.netease.com/docs/cn/index.html

airtest 工具安装

下载对应的版本,解压后双击AirtestIDE.exe即可运行

如果使用poco框架,则需要安装pcpoui依赖

pip3 install pocoui

airtest 工具介绍

  •     airtest辅助窗
  •     poco辅助窗
  •     设备窗
  •     工具栏
  •     脚本编辑器
  •     logo查看

连接手机

android手机依赖adb shell作为电脑与手机的链接。首先必须确保adb devices可以连接手机。刷新侧边栏的ADB,查看airtest是否识别到手机,点击connect链接,即可实时查看到手机屏幕状态。

 Airtest脚本录制–基于图像识别(挣实惠购物流程)

 

  • touch(): 点击操作,根据录制脚本时所截取的图像进行点击
  • wait(): 可以等待画面中某个图片出现,如果在指定的时间范围内匹配到了该图片,就会返回图片所处位置的焦点,否则抛出TargetNotFoundError异常
  • swipe():可以从一个位置滑动到另外一个位置
  • exists():判断画面中是否存在某个图片,如果匹配到图片,返回图片所处位置的焦点,否则返回False
  • text():输入文本
  • sleep():线程挂起
  • assert_exists():断言图片存在于当前画面上
  • assert_not_exists():断言图片不存在
  • assert_equal():断言数值相等
  • assert_not_equal():断言数值不等
  • # assert_exists()与assert_equal()的区别在于,assert_exists断言的对象是图片,assert_equal断言的对象是数值

测试报告

 

 POCO脚本录制--基于UI事件元素

!!!此时一定要注意,手机连接airtest后,选择poco辅助窗是,手机上会自动安装pocoservice。如果不安装的话,脚本录制不了,你会看不到ui树,无法进行找元素。

安装完成pocoservice后,把poco辅助窗中的stop切换到Android,然后开始录制

# -*- encoding=utf8 -*-

 

__author__ = "lsande"

  

from airtest.core.api import *

 

auto_setup(__file__)

 

from poco.drivers.android.uiautomation import AndroidUiautomationPoco

 

poco = AndroidUiautomationPoco(use_airtest_input=True, screenshot_each_action=False)

 

poco(text="挣实惠").click()

 

sleep(4)

 

poco("cn.zhengshihui.earnbenefit:id/tab_search2").click()

 

poco(text="铅笔").click()

 

poco("cn.zhengshihui.earnbenefit:id/search_result_ll").offspring("cn.zhengshihui.earnbenefit:id/search_recommend_rv").child("cn.zhengshihui.earnbenefit:id/product_item_constra")[0].child("cn.zhengshihui.earnbenefit:id/return_price_before_tv").click()

 

poco("cn.zhengshihui.earnbenefit:id/product_detail_refresh_page").swipe([-0.1732, -0.5023])

 

poco(text="点击查看商品详情").click()

 

poco("cn.zhengshihui.earnbenefit:id/product_image_line").swipe([-0.0254, -0.4261])

 

poco("cn.zhengshihui.earnbenefit:id/buy_coupon").click()

 

poco(text="立即领券").click()

  • 0
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值