Appium 无法启动
Posted
技术标签:
【中文标题】Appium 无法启动【英文标题】:Appium will not start 【发布时间】:2016-06-18 15:17:13 【问题描述】:我更改了我的配置,尝试一次运行两个 appium 会话,这样我就可以检查并在并行端口上运行自动化。不知何故,我打破了 appium 检查器上的 avd 启动。我试图恢复一切,杀死所有会话,停止 appium 的所有命令行实例,但问题仍然存在。
完整的错误信息:
错误:无法启动 Appium 会话,错误是:错误:您必须 传入“app”或“browserName”上限
info: [debug] Error: You must pass in the 'app' or 'browserName' 上限 在 e (/Applications/Appium.app/Contents/Resources/node_modules/appium/lib/server/capabilities.js:171:34) 在 [object Object].Capabilities.checkStrictValidity (/Applications/Appium.app/Contents/Resources/node_modules/appium/lib/server/capabilities.js:188:12) 在 [object Object].Capabilities.checkValidity (/Applications/Appium.app/Contents/Resources/node_modules/appium/lib/server/capabilities.js:140:10) 在 [object Object].Appium.configure (/Applications/Appium.app/Contents/Resources/node_modules/appium/lib/appium.js:238:35) 在 [对象对象]。 (/Applications/Appium.app/Contents/Resources/node_modules/appium/lib/appium.js:118:10) 在 [object Object].Appium.start (/Applications/Appium.app/Contents/Resources/node_modules/appium/lib/appium.js:129:5) 在exports.createSession (/Applications/Appium.app/Contents/Resources/node_modules/appium/lib/server/controller.js:188:16) 在 Layer.handle [as handle_request] (/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/layer.js:82:5) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:110:13) 在 Route.dispatch (/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:91:3) 在 Layer.handle [as handle_request] (/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/layer.js:82:5) 在 /Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/index.js:267:22 在 Function.proto.process_params (/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/index.js:321:12) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/index.js:261:10) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:100:14) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:104:14) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:104:14) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:104:14) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:104:14) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:104:14) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:104:14) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:104:14) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:104:14) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:104:14) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:104:14) 在 /Applications/Appium.app/Contents/Resources/node_modules/appium/lib/server/controller.js:39:7 在 Layer.handle [as handle_request] (/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/layer.js:82:5) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:110:13) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:104:14) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:104:14) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:10 4:14) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:104:14) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:104:14) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:104:14) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:104:14) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:104:14) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:104:14) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:104:14) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:104:14) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:104:14) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:104:14) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:104:14) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:104:14) 在 Route.dispatch (/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/route.js:91:3) 在 Layer.handle [as handle_request] (/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/layer.js:82:5) 在 /Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/index.js:267:22 在 Function.proto.process_params (/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/index.js:321:12) 在下一个(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/index.js:261:10) 在方法覆盖(/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/method-override/index.js:79:5) 在 Layer.handle [as handle_request] (/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/layer.js:82:5) 在 trim_prefix (/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/index.js:302:13) 在 /Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/express/lib/router/index.js:270:7 信息:[调试] 以错误响应客户端: "status":33,"value":"message":"无法创建新会话。 (原始错误:您必须传入 'app' 或 'browserName' cap)","origValue":"你必须传入 'app' 或 'browserName' cap","sessionId":null 信息:
信息:--> GET /wd/hub/status
info: [debug] 成功响应客户端: "status":0,"value":"build":"version":"1.4.13","revision":"c75d8adcb66a75818a542fe1891a34260c21f76a" 信息:
警报截图:
设置:
如果需要更多信息,请告诉我。谢谢。
【问题讨论】:
hm 错误是缺少应用程序/浏览器名称,但我看到您设置了应用程序。但是,我也看到您没有设置所需的 deviceName。尝试设置它,让我知道会发生什么。 我把它取下来看看它是否能解决问题。添加它备份并得到同样的错误。 appium 是否可以访问您提到的 appPath。 【参考方案1】:请勾选(打勾)以下选项:
android Settings -> Basic -> Package [possible cause of failure]
Android Settings -> Advanced -> SDK
顺便说一句,这只是为了以防万一你想使用 UI 功能运行你的应用程序(也许使用 Appium 检查器独立),否则如果你使用一些 client
来设置 capabilities
会很棒请参阅您的设置代码以建议任何必要的更改。
【讨论】:
【参考方案2】:缺少应用程序包和活动名称。需要将包和活动名称添加到所需的功能中
【讨论】:
【参考方案3】:将您的 appium 桌面更新到最新版本。目前我使用的是 1.8.1 版本。
步骤:
-
启动 appium 桌面
点击高级标签
输入服务器地址=127.0.0.1,端口=4723,勾选Allow Session Override复选框
单击启动服务器按钮。它将启动 appium 服务器
点击appium桌面应用右上角的眼镜图标。将出现一个新窗口。
在出现的窗口中,您将看到所需的功能菜单。您需要插入以下参数。
设备名称 平台名称 应用包 应用活动-
点击开始会话按钮
确保您的设备已连接到您的计算机,并且您的设备已启用 USB 调试。
【讨论】:
以上是关于Appium 无法启动的主要内容,如果未能解决你的问题,请参考以下文章
无法启动 Appium 会话,错误是:错误:启动应用程序需要参数“appPackage”
通过 AppiumDriverLocalSerivce 无法启动 appium service 问题
Chrome 浏览器无法使用 Java 在 Appium 中启动