巧用bat文件作Airtest脚本的“批量运行”


👆对私有云感兴趣能够进入公众号回复“私有云”哦。微信








前言


.bat  文件是可执行文件,它包含一条或多条命令。使用  .bat  文件进行批处理操做,能够帮助咱们简化平常或者重复性的操做。
以前咱们的教程讲过 如何使用命令行运行Airtest脚本 ,实际上  .bat  文件里面的命令也是靠  cmd.exe  解析执行的,因此咱们能够在  .bat  文件中编写运行airtest脚本的命令,以此来执行airtest脚本。

1

用bat文件执行单个Airtest脚本多线程


咱们来先来复习下,使用命令行运行Airtest脚本的指令:  airtest run + 脚本文件路径  ,另外还能够在命令后面跟上  --device --log  和  --recording  等参数。
举几个运行airtest脚本的例子:
  
    
  
  
   
   
            
   
   
# 不带任何参数运行脚本
airtest run D:\test\newsLogin.air
# 带命令行参数运行脚本
airtest run D:\test\newsLogin.air --device Android:/// --log log/ --recording
回顾了在命令行运行airtest脚本的知识点后,咱们再来看下如何新建  .bat  文件。首先咱们须要在电脑上新建一个  .txt  文件,并输入如下内容:
  
    
  
  
   
   
            
   
   
::关闭回显
@echo off
::切换到D
D:
::进入D盘的test目录
cd D:\test
::执行 airtest run 命令
start airtest run newsLogin.air
exit
其中  ::xxx  表示的是注释内容,能够不写入  .txt  文件中;另外示例脚本的路径为  D:\test\newsLogin.air  ,因此这里还作了切换到脚本路径的操做,同窗们能够根据本身脚本的实际状况来进行切换。
还须要注意的是,在上述示例中,咱们已经在示例脚本的开头添加了设备和  log  的初始化内容,因此不用另外在运行命令后面加上各类运行参数:
  
    
  
  
   
   
            
   
   
auto_setup(__file__,logdir=True,devices=["Android://127.0.0.1:5037/emulator-5554"])
若是同窗们的测试设备相对固定,也建议直接将这些参数写到脚本中,能够简化命令行运行脚本的命令。
写完以上几条命令后,咱们关掉  .txt  文件,并将他的后缀名  txt  改为  bat  ,以后会弹出重命名的警示弹窗,点击“是”便可。最后,咱们能够来检测下运行效果:

2

用bat文件顺序执行多个airtest脚本app


使用  .bat  文件成功执行单个airtest脚本以后,咱们来试试用  .bat  文件顺序执行多个airtest脚本:
  
    
  
  
   
   
            
   
   
@echo off
D:
cd D:\test
title 正在执行第一个脚本
airtest run newsLogin.air
title 正在执行第二个脚本
airtest run newsUsing.air
title 正在执行第三个脚本
airtest run newsExit.air
exit
能够看到,在上述登陆网易新闻的示例脚本以外,咱们又增长了两个脚本,分别用来实现使用网易新闻和退出登陆等操做。
因此在  .bat  文件中,咱们分别写了三条用于运行对应脚本的命令,其中  title xxx  用来指定命令提示窗口的标题,可让咱们清晰地看出当前是在执行第几个脚本。最终的执行效果以下:

3

用bat文件实现多机运行less


在  .bat  文件中, start  能够启动单独的命令行窗口来运行指定程序或命令。因此咱们能够利用  start  命令开启多个命令行窗口,实如今多台设备上执行同一个脚本:
  
    
  
  
   
   
            
   
   
@echo off
D:
cd D:\test
start "正在使用雷电模拟器跑脚本" airtest run newsLogin.air --device Android://127.0.0.1:5037/emulator-5554
start "正在使用mumu模拟器跑脚本" airtest run newsLogin.air --device Android://127.0.0.1:5037/127.0.0.1:7555
exit
上述命令能够实如今1台雷电模拟器和1台mumu模拟器上跑同一个脚本,效果以下:
固然,咱们还能够给每一台设备单独配置1个 .bat 文件,最后再写1个总的 .bat 文件来调度前面用于在特定设备上运行脚本的 .bat 。若是你们感兴趣的话,也能够自行实现任务调度、多线程运行的方案来批量运行脚本。







小结


在一些状况下,使用  .bat  文件能够帮助咱们简化代码,并减小不少重复性的操做,童鞋们能够根据本身的实际状况灵活使用~

(嘿同窗,若是推文对你有帮助的话,帮忙点个赞或者在看呗~)
用airtest作滑动解锁怎么搞?其实很简单!
2行代码帮你搞定自动化测试的文字识别
Airtest测试Windows窗口翻车?仍是想跟大家聊聊测试win窗口的一些问题


本文分享自微信公众号 - AirtestProject(AirtestProject)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。编辑器

相关文章
相关标签/搜索