首页 文章

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

提问于
浏览
2

在这里,我提供了我遵循的步骤 . 在Eclipse中,在引用的库中添加了Selenium服务器,selenium-java,testng6.8 jar文件启动了Appium Server . 服务器启动后出现以下错误:控制台:线程“main”中的异常org.openqa.selenium.SessionNotCreatedException:无法创建新会话 . (原始错误:需要以下所需功能,但未提供:强文本* platformName)(警告:服务器未提供任何堆栈跟踪信息)强文本命令持续时间或超时: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 at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)at sun位于org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler)的java.lang.reflect.Constructor.newInstance(未知来源)的sun.reflect.DelegatingConstructorAccessorImpl.newInstance(未知来源)的.reflect.NativeConstructorAccessorImpl.newInstance(未知来源) .java:204)org.openqa.selenium.remote上的org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:156) . oteWebDriver.execute(RemoteWebDriver.java:599)org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:240)org.openqa.selenium.remote.RemoteWebDriver . (RemoteWebDriver.java:126)at org . openqa.selenium.remote.RemoteWebDriver . (RemoteWebDriver.java:153)com.gorillalogic.monkeytalk.demo.Demo.setup(Demo.java:37)at com.gorillalogic.monkeytalk.demo.Demo.main(Demo.java) :71)在appium Server中:启动节点服务器信息:欢迎使用Appium v1.2.0(REV e53f49c706a25242e66d36685c268b599cc18da5)debug:非默认服务器args:{“app”:“D:\ Apk \ com.gorillalogic.monkeytalk.demo1.apk “ ”地址“: ”127.0.0.1“, ”logNoColors“:真实的, ”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上启动信息:LogLevel:debug info : - > POST / wd / hub / session {“desiredCapabilities”:{ “automationName”:“Appium”,“platform”:“WINDOWS”,“app”:“D:\ Apk \ com.gorillalogic.monkeytalk.demo1.apk”,“deviceName”:“Android Emulator”,“browserName”: “”,“appActivity”:“com.gorillalogic.monkeytalk.demo1.RootActivity”,“appPackage”:“com.gorillalogic.monkeytalk.demo1”,“version”:“4.4”}} debug:在/ wd发起的Appium请求/ hub / session info:< - POST / wd / hub / session 500 10.015 ms - 290 debug:使用params接收的请求:{“desiredCapabilities”:{“automationName”:“Appium”,“platform”:“WINDOWS”, “app”:“D:\ Apk \ com.gorillalogic.monkeytalk.demo1.apk”,“deviceName”:“Android Emulator”,“browserName”:“”,“appActivity”:“com.gorillalogic.monkeytalk.demo1 . RootActivity“,”appPackage“:”com.gorillalogic.monkeytalk.demo1“,”version“:”4.4“}}错误:需要以下所需功能,但未提供:platformName debug:配置错误,未启动会话debug:清理appium会话错误:无法启动Appium会话,错误是:错误:以下所需的功能是req已提供但尚未提供:platformName debug:错误:需要以下所需功能,但未提供:Capabilities.checkValidity的platformName(E:\ Appium \ node_modules \ appium \ lib \ server \ capabilities.js:120:13 )在Appium.start(E:\ Appium \ node_modules \ appium \ lib \ appium.js:256:35)的Appium.start(E:\ Appium \ node_modules \ appium \ lib \ appium.js:100:10)at at在next_layer上的Object.exports.createSession [as handle](E:\ Appium \ node_modules \ appium \ lib \ server \ _ controller:js:159:16)(E:\ Appium \ node_modules \ appium \ node_modules \ express \ lib \ router \ route.js:103:13)在E:\ Appium \ node_modules \ appium \ node_modules的Route.dispatch(E:\ Appium \ node_modules \ appium \ node_modules \ express \ lib \ router \ route.js:107:5) \ express \ lib \ router \ index.js:213:24 at Function.proto.process_params(E:\ Appium \ node_modules \ appium \ node_modules \ express \ lib \ router \ index.js:286:12)at next(E :\ Appium \ node_modules \ appium \ node_modules \ express \ lib \ router \ index.js:207:19)at next(E:\ Appium \ node_modules \ appium \ node_modules \ express \ lib \ router \ index.js:182:38)debug:响应客户端出错:{“status”:33,“value”:{“message”:“无法创建新会话 . (原始错误:需要以下所需功能,但未提供:platformName)”,“origValue”:“需要以下所需功能,但未提供:platformName“},”sessionId“:null}

请有人帮助我...我在过去2周内尝试过这个

2 回答

  • 4

    您需要在所需的功能列表中设置platformName:

    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

  • -1

    您缺少platformName功能

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

相关问题