我正在尝试让monkeyrunner接受外部.py文件。 .py文件中只有一些函数,没什么特别的。
mainscript.py:
import unittest
import logging
import sys
sys.path.append("C:\path\to\helperscripts\")
from monkeyHelper import monkeyHelper
#log to STDERR
logging.basicConfig(level=logging.DEBUG)
class TestDepthOneFunctions(unittest.TestCase):
def setUp(self):
mh = monkeyHelper()
self.device = mh.setupDevice()
#monkeyHelper.setupDevice()
def test_myMusic(self):
self.assertEqual(self.device,3)
def tearDown(self):
pass
if __name__ == '__main__':
unittest.main()
monkeyHelper.py:
from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice
import logging
import sys
class monkeyHelper(object):
def __init__(self):
return
def setupDevice(self):
return 3
我试过跑步 #> monkeyrunner.bat mainscript.py 它不起作用。我已经看到了monkeyrunner.bat推出的完整命令行 - 有没有办法将C:\ path \添加到\ helperScripts到该命令行?这就是monkeyrunner.bat吐出来的:
C:\Windows\system32\java.exe -Xmx512m -Djava.ext.dirs=lib\;lib\x86_64 -Dcom.android.monkeyrunner.bindir=..\framework -jar lib\monkeyrunner.jar mainscript.py
我得到的错误是:
import monkeyHelper
ImportError: No module named monkeyHelper
我一整天都在反对这一点 - 任何帮助都表示赞赏!
答案 0 :(得分:2)
由于您无法在字符串中随意添加\,请尝试:
sys.path.append(r"C:\path\to\helperscripts")
r
表示该字符串将被视为原始字符串,这意味着将忽略所有转义码。
还要确保helperMonkey.py在该路径中,
答案 1 :(得分:0)
如果你使用monkeyrunner 你可以在
下添加一个文件夹'lib'C:\Documents and Settings\<user name>\Local Settings\Application Data\Android\android-sdk\tools\lib'
然后将你的py文件放在
下C:\Documents and Settings\<user name>\Local Settings\Application Data\Android\android-sdk\tools\lib\lib
如果您的文件名为myPyFile.py
刚
from myPyFile import *
更新: 小心如果要更新Android SDK工具,请先备份文件,上次更新时,我的lib文件被删除。