zoukankan      html  css  js  c++  java
  • AirtestProject测试框架

    本文首发于:行者AI

    AirtestProject是一款自动化测试框架,该项目包括:Airtest、Poco、AirtestIDE。

    Airtest是一个跨平台的基于图像识别的UI自动化测试框架;Poco是一个跨平台的UI自动化框架;AirtestIDE是跨平台的UI自动化测试编辑器,内置了Airtest和Poco的相关插件功能。详细介绍可以参考官方文档:https://Airtest.doc.io.netease.com/

    1. Airtest工具介绍

    1.1 安装Airtest

    前往官网下载并解压,路径不要出现中文。解压后选择目录下的AirtestIDE.exe后启动软件。下载网址:http://Airtest.netease.com/index.html

    启动Airtest

    AirtestIDE工具界面

    1.2 脚本编辑窗

    编写脚本,可以使用辅助窗的预设命令。

    1.3 设备连接窗

    显示连接的设备,可以直接在窗口操作手机。

    1.4 连接手机

    手机进入开发者模式,打开USB调试模式。可以在设备窗查看设备型号,手机连接上了电脑设备状态会显示为connect。点击设备型号可以实时显示手机屏幕的内容。

    1.5 Airtest辅助框

    命令 解释
    touch 点击指定位置
    wait 等待指定的图片出现后进行下一步操作
    swipe 滑动
    text 文字输入
    keyevent 按键输入,包括(HOME/BACK/MENU等)
    snapshot 截屏
    sleep 等待指定时间

    1.6 Poco辅助框

    默认为stop,可选择不同的平台,使用Poco时,需要在电脑上安装Poco,并把Poco-sdk集成到游戏里。如果项目里没有集成Poco-sdk则无法使用Poco的ui渲染树功能。

    如图:

    对于不同品牌的手机,连接Airtest时,需要的权限和设置都会不同。以小米手机为例:需要在开发者模式下,进入开发者选项里,打开usb调试,而usb安装(影响用户通过PC端向手机端安装应用)和USB调试(安全模式)(影响开发者执行自动化脚本)则需要登录小米账号。具体的设备特殊问题可以看官方文档:https://Airtest.doc.io.netease.com/IDEdocs/device_connection/2_android_faq/#2

    连接模拟器则在模拟器上打开USB调试,然后使用远程设备连接,输入'adb connect 127.0.0.1:',加上对应模拟器使用的端口号即可连接。

    2. Airtest工具的使用

    2.1 使用Airtest框架来测试

    点击左上角的文件,新建脚本,可以选择air脚本或者py脚本。在脚本编辑窗输入脚本,可以使用Airtest辅助窗的控件。测试结束后使用“ctrl+L”可以查看报告。

    2.2 使用selenium框架测试web应用

    推荐使用chrome浏览器,需要下载chromedriver在对应的安装路径下,与exe文件同一文件层级。

    脚本设计:

    from  selenium import webdriver #导入webdriver库
    import time    #导入库
    driver = webdriver.Chrome()  #重命名
    driver.get("网址") #打开对应网址 
    

    元素定位:

    命令 解释
    find_element_by_id() 根据id进行查找
    find_element_by_name() 根据名字查找
    find_element_by_class_name() 根据类名查找
    find_element_by_link_text() 根据连接文本查找
    find_element_by_tag_name() 根据标签名查找
    find_element_by_xpath() 根据路径查找
    find_element_by_css_selector() 根据CSS选择器查找

    键盘操作:

    命令 解释
    send_keys(Keys.BACK_SPACE) 删除键
    send_keys(Keys.SPACE) 空格键
    send_keys(Keys.TAB) 制表键
    send_keys(Keys.ESCAPE) 回退键
    send_keys(Keys.ENTER) 回车键
    send_keys(Keys.CONTROL,'a') 全选
    send_keys(Keys,'c') 复制
    send_keys(Keys,'x') 剪切
    send_keys(Keys,'v') 粘贴

    2.3 使用Poco来测试移动app应用

    手机打开开发者模式和USB调试,安装对应Poco程序。模拟器使用adb连接。连接后在设备窗可以查看。在Poco窗选择android,脚本编辑窗会有加载Poco库的提示,选yes加载库。

    编辑脚本


    PS:更多技术干货,快关注【公众号 | xingzhe_ai】,与行者一起讨论吧!

  • 相关阅读:
    iframe
    # ? & 号在url中的的作用
    面向对象和面向过程
    dom
    DOM对象与jquery对象有什么不同
    绑定js
    leetcode — search-for-a-range
    leetcode — search-for-a-range
    leetcode — search-in-rotated-sorted-array
    leetcode — longest-valid-parentheses
  • 原文地址:https://www.cnblogs.com/xingzheai/p/14817323.html
Copyright © 2011-2022 走看看