通过python代码启动appium
"""
关于appium的启动
1、桌面版(咱们现在用的):
运行方式一:点击软件图标
运行方式二:
cmd命令行运行appium:
appium的路径:C:\Users\Admin\AppData\Local\Programs\Appium
\resources\app\node_modules\appium\build\lib
①CD切换上的路径
②dir(列出文件)
③找到main.js后执行node main.js
参数 -p:指定端口
参数 -g:指定保存appium日志文件的路径
node main.js -g C:\project\python\app_test_project\app_test_06\log.log
2、服务版(命令行启动)
cmd中输入appium命令即可启动
参数 -p:指定端口
参数 -g:指定保存appium日志文件的路径
3、通过python代码启动appium
①main.js路径下执行命令:node main.js
②通过端口查找进行id:netstat -ano|findstr端口
③关闭进程:taskkill /F /PID进程id
"""
import os
import subprocess
import multiprocessing
import time
import pytest
os.chdir(r'C:\Users\Admin\AppData\Local\Programs\Appium'
r'\resources\app\node_modules\appium\build\lib')
os.system(r'node main.js -p 7890 -g C:\project\python\app_test_project\app_test_06\log')
pytest.main()
def start_appium():
"""启动appium"""
os.chdir(r'C:\Users\Admin\AppData\Local\Programs\Appium'
r'\resources\app\node_modules\appium\build\lib')
port = 4723
appium_log_path = r'C:\project\python\app_test_project\app_test_06\log{}.log'.format(port)
subprocess.Popen('node main.js -p {} -g {}'.format(port, appium_log_path),
stdout=subprocess.STDOUT,
stderr=subprocess.PIPE,
shell=True).communicate()
if __name__ == '__main__':
p = multiprocessing.Process(target=start_appium)
p.start()
time.sleep(10)
pytest.main()