今天有一个新需求,要求批量执行airtest IDE中的.air文件(在同一目录下),但是airtest IDE自身不具备批量执行的功能,于是网上找了许多方法。总结就是主要可以通过python脚本或bat文件来实现。
这里用的是雷电模拟器,大家可以根据自己具体实际设备来拼接在命令行的运行命令。
python实现
import logging
import os
import subprocess
# 指定air文件存放目录
air_files_folder = 'E:/AirTestCode/'
logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s')
# 遍历文件夹中的所有 .air 文件
for file_name in os.listdir(air_files_folder):
if file_name.endswith(".air"):
logging.info(f'正在运行的文件:{file_name}')
file_path = os.path.join(air_files_folder, file_name)
# 拼接命令
command = ["airtest", "run", file_path, "--device", "Android://127.0.0.1:5037/emulator-5554"]
subprocess.run(command)
bat文件实现
对于bat代码不熟的同学可以自行到网上查找相关资料。
@echo off
set "folder_path=E:\\AirTestCode"
set "extra_arguments=--device "Android://127.0.0.1:5037/emulator-5554""
for /d %%D in (%folder_path%\*) do (
echo ***************************************************************************************************
echo 运行 %%~nxD
echo ***************************************************************************************************
airtest run %%D %extra_arguments%
)
pause