Airtest操作多台云手机,进行分发,多个脚本后端调度

Posted 加载时间中.....

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Airtest操作多台云手机,进行分发,多个脚本后端调度相关的知识,希望对你有一定的参考价值。

一.核心重点

使用python后端框架:tornado

调度:redis队列
存手机的class_name采取头取尾曾
      
多台手机连接方式
connect_device(f"android:///{class_name}")  #class_name也就是云手机ip+端口,或者说本地手机连接的名称,你可以用adb devices看名字
set_current(class_name)
dev = device()
poco = AndroidUiautomationPoco(device=dev,use_airtest_input=True, screenshot_each_action=False)
#用这种连接调度是为了防止操作串了

二.互动操作思路

1.前端向后端接口发起请求

2.后端接受请求,更加参数成功一个bat脚本,并用os命令执行他,利用redis中blpop或者brpop方法进行阻塞

#bat脚本模板
@echo off
start cmd /c  "python airtest脚本路径 参数1 参数2 ......." #其中参数组一般都有class_name进行选择
        
#cmd/c结束后关闭cmd,cmd/K不关闭

#要点在window环境下创建bat脚本用系统的编码格式,国内一般是‘gbk‘

#如果是linux上操作,就不创建bat脚本了shell脚本,也是要使用当前系统环境的编码格式

方法死的人是活的,这是我操作的方法,思路有了代码就简单了

以上是关于Airtest操作多台云手机,进行分发,多个脚本后端调度的主要内容,如果未能解决你的问题,请参考以下文章

[1054]Airtest的探索使用

airtest工具怎么循环执行一个脚本或者重复一段操作?

airtest做的脚本如何生成apk运行在手机上?

airtest使用

airtest介绍

Airtest引用其他的 .air 脚本