2012-11-06 29 views
1

我想從Eclipse(4.2)運行MonkeyRunner Android測試工具。 我安裝了Eclipse PyDev插件,以及Jython 2.5.1。 我的PyDev解釋器設置爲Jython/2.5。Android MonkeyRunner異常

我在Eclipse中創建一個Jython項目,一個簡單的Jython文件:

# Imports the monkeyrunner modules used by this program 
from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice 

# Connects to the current device, returning a MonkeyDevice object 
device = MonkeyRunner.waitForConnection() 

現在,當我從Eclipse的(項目>運行爲JythonProject),I'me啓動它收到以下異常:

Traceback (most recent call last): 
    File "C:\svnrepository\trunk\JythonProject\src\main.py", line 10, in <module> 
    device = MonkeyRunner.waitForConnection() 
    at com.android.monkeyrunner.MonkeyRunner.waitForConnection(MonkeyRunner.java:75) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
    at java.lang.reflect.Method.invoke(Unknown Source) 
java.lang.NullPointerException: java.lang.NullPointerException 

任何想法可能是錯誤的?

回答

3

有一個迭戈託雷斯米蘭諾的帖子如何配置PyDev使用它monkeyrunner。我遵循his步驟,在我的情況下,一切正常。

簡而言之,起初您需要更改Android安裝。您需要將您的monkeyrunner工具重命名爲monkeyrunner-original。然後你需要寫在相同的文件夾shell腳本(將其命名爲monkeyrunner),它將以特定的方式調用monkeyrunner-original。

腳本爲Linux:

# /bin/bash 
if [ "$1" = '-u' ] 
then 
shift 
fi 

exec /opt/android-sdk-linux_86/tools/monkeyrunner-original "[email protected]" 

腳本的Windows:

REM 
@echo off if("%1")==("-u") shift "C:\Program Files\Android\android-sdk\tools"/monkeyrunner-original %1 %2 %3 %4 %5 %6 %7 %8 

然後在Eclipse,你應該定義新的Python解釋器(不Jython的),並指向創建的腳本。