Appium:无法在真实设备中启动应用程序

时间:2015-04-11 02:46:34

标签: android selenium-webdriver eclipse-plugin appium

我是Appium的新手。我已经安装了所有先决条件并在eclipse中运行脚本但是我在控制台中遇到了以下错误。请帮帮我。

脚本: public void testSample()抛出MalformedURLException {

    DesiredCapabilities cap = new DesiredCapabilities();
    cap.setCapability(MobileCapabilityType.VERSION,"4.0.4");
    cap.setCapability(MobileCapabilityType.PLATFORM_NAME, "Android");
    cap.setCapability(MobileCapabilityType.DEVICE_NAME,"YT9100LVGT");
    cap.setCapability(MobileCapabilityType.APP_PACKAGE, "com.android.calculator2");
    cap.setCapability(MobileCapabilityType.APP_ACTIVITY, "com.android.calculator2.Calculator");

    AndroidDriver driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"),cap);

控制台出错: org.openqa.selenium.SessionNotCreatedException:无法创建新会话。 (原始错误:' java -version'失败。错误:命令失败:错误:打开注册表项' Software \ JavaSoft \ Java Runtime Environment' 错误:找不到java.dll 错误:找不到Java SE运行时环境。 )(警告:服务器未提供任何堆栈跟踪信息) 命令持续时间或超时:1.02秒 构建信息:版本:' 2.44.0',修订版:' 76d78cf',时间:' 2014-10-23 20:03:00' 系统信息:主持人:' LENOVO-PC',ip:' 175.16.1.122',os.name:' Windows 7',os.arch:&# 39; amd64',os.version:' 6.1',java.version:' 1.7.0_65'

Appium服务器中的错误日志:  info:客户端用户代理字符串:Apache-HttpClient / 4.3.4(java 1.5)

  

info:[debug]提供了以下所需功能,但appium无法识别。它们将被传递给在此服务器上运行的任何其他服务。 :版本   信息:[调试]没有获得应用但确实获得Android包,将尝试在设备上启动它   info:[debug]创建新的appium会话e6da8fb1-3097-4b47-9e32-ac5f38129755   info:启动android appium   info:[debug]获取Java版本   info:[debug]清理android对象   错误:无法启动Appium会话,错误是:错误:' java -version'失败。错误:命令失败:错误:打开注册表项' Software \ JavaSoft \ Java Runtime Environment'   错误:找不到java.dll   错误:找不到Java SE Runtime Environment。

     

info:[debug]清理appium会话   info:[debug]错误:' java -version'失败。错误:命令失败:错误:打开注册表项' Software \ JavaSoft \ Java Runtime Environment'   错误:找不到java.dll   错误:找不到Java SE Runtime Environment。

at C:\Users\LENOVO\Desktop\Mobile automation\AppiumForWindows-1.3.4.1\Appium\node_modules\appium\lib\devices\android\android-common.js:1033:17
at ChildProcess.exithandler (child_process.js:641:7)
at ChildProcess.EventEmitter.emit (events.js:98:17)
at maybeClose (child_process.js:743:16)
at Socket.<anonymous> (child_process.js:956:11)
at Socket.EventEmitter.emit (events.js:95:17)
at Pipe.close (net.js:465:12)
     

info:[debug]响应客户并出现错误:{&#34; status&#34;:33,&#34; value&#34;:{&#34; message&#34;:&#34; A无法创建新会话。 (原始错误:&#39; java -version&#39;失败。错误:命令失败:错误:打开注册表项&#39; Software \ JavaSoft \ Java运行时环境&#39; \ r \ n错误:找不到java。 dll \ r \ n错误:找不到Java SE运行时环境。\ r \ n)&#34;,&#34; origValue&#34;:&#34;&#39; java -version&#39;失败。错误:命令失败:错误:打开注册表项&#39; Software \ JavaSoft \ Java运行时环境&#39; \ r \ n错误:找不到java.dll \ r \ n错误:找不到Java SE运行时环境。\ r \ n \ n&#34;}&#34;的sessionId&#34;:空}   info:&lt; - POST / wd / hub / session 500 567.298 ms - 548

2 个答案:

答案 0 :(得分:0)

在环境变量中设置java_home

答案 1 :(得分:0)

经过研究,我得到了解决问题的方法。在控制面板中卸载java并删除system32和syswow64中的java相关文件。重新安装java新版本。