Appium 1.2.0.1 服务器在运行脚本时显示错误

Posted

技术标签:

【中文标题】Appium 1.2.0.1 服务器在运行脚本时显示错误【英文标题】:Appium 1.2.0.1 server shows error while running the script 【发布时间】:2014-11-23 15:39:09 【问题描述】:

在这里,我提供了我遵循的步骤。 在日食中, Selenium 服务器、selenium-java、testng6.8 jar 文件添加到引用的库中 启动 Appium 服务器。服务器启动 我收到以下错误: 控制台:

线程“main”org.openqa.selenium.SessionNotCreatedException 中的异常:无法创建新会话。 (原始错误:需要以下所需功能,但未提供:强文本*平台名称)(警告:服务器未提供任何堆栈跟踪信息) 强文本命令持续时间或超时:182 毫秒 构建信息:版本:'2.42.2',修订:'6a6995d',时间:'2014-06-03 17:42:30' 系统信息:主机:'TestingServer',ip:'192.168.1.150',os.name:'Windows 7',os.arch:'x86',os.version:'6.1',java.version:'1.6.0_17 ' 驱动程序信息:org.openqa.selenium.remote.RemoteWebDriver 在 sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 在 sun.reflect.NativeConstructorAccessorImpl.newInstance(未知来源) 在 sun.reflect.DelegatingConstructorAccessorImpl.newInstance(未知来源) 在 java.lang.reflect.Constructor.newInstance(未知来源) 在 org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:204) 在 org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:156) 在 org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:599) 在 org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:240) 在 org.openqa.selenium.remote.RemoteWebDriver.(RemoteWebDriver.java:126) 在 org.openqa.selenium.remote.RemoteWebDriver.(RemoteWebDriver.java:153) 在 com.gorillalogic.monkeytalk.demo.Demo.setup(Demo.java:37) 在 com.gorillalogic.monkeytalk.demo.Demo.main(Demo.java:71)

在appium服务器中:

启动节点服务器 信息:欢迎使用 Appium v​​1.2.0 (REV e53f49c706a25242e66d36685c268b599cc18da5) 调试:非默认服务器参数:"app":"D:\Apk\com.gorillalogic.monkeytalk.demo1.apk","address":"127.0.0.1","logNoColors":true,"androidPackage": "com.gorillalogic.monkeytalk.demo1","androidActivity":"com.gorillalogic.monkeytalk.demo1.RootActivity","avd":"TestMani","platformName":"Android","platformVersion":"19", "automationName":"Appium" 信息:Appium REST http 接口监听器开始于 127.0.0.1:4723 信息:日志级别:调试 info: --> POST /wd/hub/session "desiredCapabilities":"automationName":"Appium","platform":"WINDOWS","app":"D:\Apk\com.gorillalogic.monkeytalk. demo1.apk","deviceName":"Android 模拟器","browserName":"","appActivity":"com.gorillalogic.monkeytalk.demo1.RootActivity","appPackage":"com.gorillalogic.monkeytalk.demo1" "版本":"4.4" 调试:在 /wd/hub/session 发起的 Appium 请求 信息:

请任何人帮助我...我在过去 2 周尝试这个

【问题讨论】:

请给我们一个可接受的答案。 【参考方案1】:

您需要在所需的功能列表中设置平台名称:

capabilities.setCapability("platformName", "Android");

如果您使用的是 Android。

以下是所有这些的示例:

    File classpathRoot = new File(System.getProperty("user.dir"));
    File appDir = new File(classpathRoot, "../../../apps/ContactManager");
    File app = new File(appDir, "ContactManager.apk");
    DesiredCapabilities capabilities = new DesiredCapabilities();
    capabilities.setCapability(CapabilityType.BROWSER_NAME, "");
    capabilities.setCapability("platformName", "Android");
    capabilities.setCapability("deviceName","Android Emulator");
    capabilities.setCapability("platformVersion", "4.4");
    capabilities.setCapability("app", app.getAbsolutePath());
    capabilities.setCapability("appPackage", "com.example.android.contactmanager");
    capabilities.setCapability("appActivity", ".ContactManager");
    driver = new AppiumDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);

此链接将提供更多示例:

https://github.com/appium/sample-code/tree/master/sample-code/examples/java/junit

【讨论】:

【参考方案2】:

您缺少 platformName 功能

capabilities.setCapability("platformName", "Android");

【讨论】:

以上是关于Appium 1.2.0.1 服务器在运行脚本时显示错误的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Eclipse 在 Appium 上运行脚本测试?

appium 后台运行shell脚本

再appium中怎样运行python脚本

appium自动化测试框架——自动化启动多台设备思路梳理

appium 脚本运行不起来,为什么呀

php脚本通过ajax运行时显示进度条