啓動appium 服務的兩種方法
)
通過cmd窗口命令啓動
啓動單個appium服務
打開cmd,直接輸入:appium
這裏默認啓動的端口是4723,如果沒有被佔用的情況
C:\Users\carl.DJ>appium
[Appium] Welcome to Appium v1.17.1
[Appium] Appium REST http interface listener started on 0.0.0.0:4723
也可以直接輸入:appium -p 4723
C:\Users\carl.DJ>appium -p 4723
[Appium] Welcome to Appium v1.17.1
[Appium] Appium REST http interface listener started on 0.0.0.0:4723
啓動多個appium服務
啓動多個appium,就是指定端口號即可 :appium -p 端口號
啓動appium服務1
C:\Users\carl.DJ>appium -p 4723
[Appium] Welcome to Appium v1.17.1
[Appium] Appium REST http interface listener started on 0.0.0.0:4723
啓動appium服務2
C:\Users\carl.ding>appium -p 4725
[Appium] Welcome to Appium v1.17.1
[Appium] Non-default server args:
[Appium] port: 4725
[Appium] Appium REST http interface listener started on 0.0.0.0:4725
以上時通過cmd命令來啓動。
是不是很簡單。
通過python腳本來啓動
但是呢,作爲一隻老魚,覺得手動啓動太多服務,有點費勁,於是乎~~
搞個腳本,一次啓動多個服務,
剩下的時間,嘿嘿…是不是很香~
啓動單個appium服務
# -*- coding: utf-8 -*-
"""
@ auth : carl_DJ
@ time : 2020-6-30
"""
import subprocess
import time
def appium_start(host,port):
'''
啓動appium server
:param host:
:param port:
:return:
'''
#指定bp端口號
bootstrap_port = str(port+1)
#把在cmd彈窗輸入的命令,直接寫到這裏
# cmd = 'start /b appium -a ' + host+' -p '+str(port) +' -bp '+ str(bootstrap_port)
#去掉 “/b”,即可以打開cmd彈窗運行
cmd = 'start appium -a ' + host+' -p '+str(port) +' -bp '+ str(bootstrap_port)
# 打印輸入的cmd命令,及時間
print("%s at %s " %(cmd,time.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)
#運行2個端口
啓動多個appium服務
# -*- coding: utf-8 -*-
"""
@ auth : carl_DJ
@ time : 2020-6-30
"""
import subprocess
import time
def appium_start(host,port):
'''
啓動appium server
:param host:
:param port:
:return:
'''
#指定bp端口號
bootstrap_port = str(port+1)
#把在cmd彈窗輸入的命令,直接寫到這裏
cmd = 'start /b appium -a ' + host+' -p '+str(port) +' -bp '+ str(bootstrap_port)
#去掉 “/b”,即可以打開cmd彈窗運行
#cmd = 'start appium -a ' + host+' -p '+str(port) +' -bp '+ str(bootstrap_port)
# 打印輸入的cmd命令,及時間
print("%s at %s " %(cmd,time.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'
#運行2個端口,使用for循環即可
for i in range(2):
port = 4723 + 2*1
appium_start(host,port)
這裏有3點說一下:
一、端口號設置
①Appium服務器端口:4723 ,bp端口:4724
①Appium服務器端口:4725 ,bp端口:4726
可以看到,appium服務器端口和bp端口是相差一位的,
那什麼是bp端口呢,
>>bp端口(–bootstrap-port),是appium和設備之間通訊的端口,如果不能指定到,則無法運行多臺設備腳本。
這是不是就明白了。
二、腳本命令寫法
在cmd窗口,我們運行設備,是 appium -a host -p 端口號 -bp 端口號
那麼我們寫在python腳本就是一樣的,只不過參數化而已。
/b :不打開彈窗運行
三、輸入到日誌
stdout=open('./appium_log/'+str(port)+'.log','a')
啓動校驗
通過cmd命令查看
查看指定端口號
netstat -ano |findstr 端口號
查看全部端口號
netstat -ano
通過生成的log文件查看
直接在生成的log文件中,查看即可
①生成的log文件
②log文件的內容