Selenium会话创建失败求助:Android7.1.1下Appium无法安装应用
解决SessionNotCreatedException及Appium无法在Android 7.1.1安装应用的问题
我之前也碰到过类似的版本兼容与设备适配问题,结合你给出的环境信息,给你几个针对性的排查和解决方向:
1. 优先排查版本冲突问题
你提到本地使用的Selenium版本是2.50.1,但构建信息里显示的是3.0.1,这大概率是依赖包冲突导致的——项目中可能同时引入了不同版本的Selenium依赖,使得Appium调用时出现版本不匹配。
- 检查项目的依赖管理文件(Maven的
pom.xml或Gradle的build.gradle),通过依赖树工具(比如mvn dependency:tree)找出重复的Selenium依赖,统一成与Appium兼容的版本。 - Appium 3.3.0属于较旧的版本,对Android 7.1.1的支持存在局限性,建议升级到Appium 2.x系列(当前主流稳定版本),同时严格确保ChromeDriver版本与设备上的Chrome版本完全对应(Android 7.1.1自带Chrome一般是5x-6x版本,需匹配对应ChromeDriver)。
2. 针对Android 7.1.1的专属配置检查
Android 7.x开始对自动化权限和系统限制更严格,需要确认以下配置:
- 设备已开启开发者选项和USB调试,并且在连接电脑时授权了调试权限;
- 调整Appium的Desired Capabilities配置:
- 添加
automationName: UiAutomator2(Android 7.x开始UiAutomator1的兼容性大幅下降); - 确保
appPackage和appActivity参数完全正确(可以通过adb shell dumpsys window | grep mCurrentFocus命令获取); - 加入
autoGrantPermissions: true参数,让Appium自动授予应用所需权限;
- 添加
- 开启设备的允许安装未知来源应用选项(Android 7.x需要手动在设置中开启)。
3. 定位App安装失败的具体原因
Appium无法安装应用时,一定要查看Appium的运行日志,找到安装失败的具体错误提示:
- 如果是签名不匹配:确保测试应用使用的是调试签名打包;
- 如果是包损坏:更换一个已知能正常安装到Android 7.1.1设备的测试包重试;
- 如果是权限问题:结合上述Desired Capabilities的配置,或手动在设备上授予安装权限。
4. 老旧依赖的兼容性验证
你的Spring 4.1.6.RELEASE和TestNG 6.8版本都比较陈旧,虽然不一定直接导致会话创建失败,但建议:
- 尝试升级TestNG到7.x版本,减少潜在的依赖冲突;
- 确认Spring框架与Appium/Selenium的依赖是否存在兼容性问题,必要时微调Spring版本。
内容的提问来源于stack exchange,提问作者user6487208
相关产品推荐
相关产品推荐

