来自APP Android端自动化测试初学者的笔记,写的不对的地方大家多多指教哦
python启动appium服务,需要使用subprocess模块,该模块可以创建新的进程,并且连接到进程的输入、输出、错误等管道信息,并且可以获取进程的返回值。
测试场景
使用python启动2台appium服务,端口配置如下:
- Appium服务器端口:4723,bp端口为4724
- Appium服务器端口:4725,bp端口为4726
说明:bp端口(—bootstrap-port)是appium和设备之间通信的端口,如果不指定到时无法操作多台设备运行脚本。
一、启动单个appium服务
代码实现
import subprocess
from time import ctime
def appium_start(host, port):
"""启动appium server"""
bootstrap_port = str(port + 1)
# /b表示后台运行命令行串口
cmd = 'start /b appium -a ' + host + ' -p ' + str(port) + ' -bp ' + str(bootstrap_port)
print('%s at %s' % (cmd, ctime()))
subprocess.Popen(cmd, shell=True, stdout=open('../appium_log/' + str(port) + '.log', 'a'),
stderr=subprocess.STDOUT)
# 测试函数,在实际运行过程中可以注释
if __name__ == '__main__':
host = '127.0.0.1'
port = 4723
appium_start(host, port)
复制代码
运行成功后显示
启动校验
(一)启动后生成日志文件
(二)启动后我们需要校验服务是否启动成功,校验方法如下:
- 首先查看有没有生成对应的log文件,查看log里面的内容。
- 使用如下命令来查看,cmd输入:
netstat -ano |findstr 端口号