微信小程序自动化测试-----Uiautomator+weditor的使用

FAT框架里,其实已经载入了uiautomator框架。
注意:它不能代替FAT里的click等方法,因为FAutoTest是h5,而uiautomator是native。所以遇到native控件,就使用uiautomator框架。
首先

1:安装python-uiautomator2
pip install --pre uiautomator2

2:设备安装atx-agent
python -m uiautomator2 init

注:如果python -m uiautomator2 init安装失败,失败原因(environmenterror),则是因为手机不允许adb安装apk。设置一下就可以了。看看手机是否支持adb安装apk。
参考文件:https://github.com/openatx/uiautomator2/issues/53

3:安装weditor
Pip install weditor

4:打开weditor
python -m weditor,如果报错No module named cv2,通过pip install opencv-python来下载cv组件,然后通过命令再次打开weditor即可。或者直接新建一个weditor.bat文件存放桌面上,下次直接点击这个bat文件就可以了。

如何使用weditor呢?
这里只做一个简单的介绍,毕竟主要是进行小程序的自动化测试,抓取元素才是主要的。
点击connect,旁边出现一个绿色的小树,则说明连接成功,操作手机至需要抓取元素的页面,reload,即可。(支持wifi链接,但是因为小程序自动化也是需要链接数据线的,所以这里不做wifi链接的介绍)

使用方法:
定位方式

  1. ResourceId定位: d(resourceId=“com.smartisanos.clock:id/text_stopwatch”).click()
  2. Text定位 d(text=“秒表”).click()
  3. Description定位 d(description="…").click()
  4. ClassName定位 d(className=“android.widget.TextView”).click()
    xpath定位并不支持,一开始打算做支持的,但是发现不用也能搞定。就是代码写的长一点而已。
    操作控件
    #click
    d(text=“Settings”).click()
    #long click
    d(text=“Settings”).long_click()
    #等待元素的出现
    d(text=“Settings”).wait(timeout=10.0)
    中文字符的输入
    如果可以定位到元素,直接通过set_text就可以输入中文
    d(text=“Settings”).set_text(“你好”)
    如果定位不到元素需要使用send_keys方法,以及切换输入法
    d.set_fastinput_ime(True)
    d.send_keys(“你好 Hello”)
    d.set_fastinput_ime(False) # 输入法用完关掉
    截图:d.screenshot(“home.jpg”)

猜你喜欢

转载自blog.csdn.net/weixin_43574761/article/details/84753086