appium 报错:selenium.common.exceptions.WebDriverException: Message: An unknown server-side error occurred while processing the command. Original error: Can't stop process; it's not currently runni...
appium进行手机浏览器的自动化测试代码如下,但报错了
#使用手机浏览器进行自动化测试
import time
from appium import webdriver
#自动化配置信息
des={
'platformName': 'Android',
'platformVersion': '8.0', #填写android虚拟机的系统版本
'deviceName': 'SamSung Galaxy S9', #填写安卓虚拟机的设备名称---值可以随便写
'browserName': 'chrome', # 直接指定浏览器名称参数为chrome【重点添加了这一步】
'udid': '192.168.235.103:5555', # 填写通过命令行 adb devices 查看到的 uuid
'noReset': True, # 确保自动化之后不重置app
'unicodeKeyboard': True,
'resetKeyboard': True,
'chromedriverExecutable': r"C:\Program Files\Appium\resources\app\node_modules\appium\node_modules\appium-chromedriver\chromedriver\win\chromedriver.exe" #使用指定的浏览器驱动-匹配手机上的谷歌浏览器
}
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', des)
driver.implicitly_wait(5)
driver.get('http://hao.uc.cn/') #打开UC网页
报错如下:
selenium.common.exceptions.WebDriverException:
Message: An unknown server-side error occurred while processing the command. Original error: Can't stop process;
it's not currently running (cmd: ''C:/Program Files/Appium/resources/app/node_modules/appium/node_modules/appium-chromedriver/chromedriver/win/chromedriver.exe' --url-base\=wd/hub --port\=8001 --adb-port\=5037 --verbose')
原因
折腾了相当久 ,差不多两个晚上才找到原因,代码没有问题,问题出在手机浏览器版本与chromedriver版本不一致导致的
解决办法
下载与浏览器版本一致的驱动后,替换appium中的驱动即可,再次启动就成功了。
我的appium是默认安装的,驱动地址在:C:\Program Files\Appium\resources\app\node_modules\appium\node_modules\appium-chromedriver\chromedriver\win,进入win文件夹中替换原有的驱动。
Chromedriver 下载地址
对应浏览器版本的Chromedriver下载地址:https://npm.taobao.org/mirrors/chromedriver
chromedriver版本匹配地址:https://github.com/appium/appium/blob/master/docs/en/writing-running-appium/web/chromedriver.md
参考文章:https://blog.csdn.net/qq_32722729/article/details/103201616