这是我需要做的。我有 2 台设备需要使用 monkeyrunner 进行测试。这是一个使用 python 和 monkeyrunner 的自动化测试。我想同时为 2 个设备执行测试,所以我想到了使用线程。
这是代码
导入线程
导入日期时间导入操作系统,系统
从 com.android.monkeyrunner 导入 ConfigParser
从日期时间导入 MonkeyRunner、MonkeyDevice、MonkeyImage
从 java.net 导入日期时间导入 hashlib
从 com.ziclix.python.sql 导入 SocketException
导入 zxJDBC
def UseThread(data1, data2, data3, devID, Code, ScreenshotRef, logFile):
device = MonkeyRunner.waitForConnection(10, devID) 'threaded code' 'initialization'
文件=打开(os.path.dirname(os.path.realpath(文件))+'\Samples.txt','r')而1:
而 1: 行 = file.readline()
if not line: print 'Done!' break else: line val=line.split('\t') data1 = val[0] data2 = val[1] data3 = val[2] threads = [] for Code in cp.options('p'): devID = cp.get('product',Code).strip() ScreenshotRef = cp.get('source','ScreenshotRef') + '\\' + prodCode.upper() logFile = outputFolder + '\\' + prodCode.upper() + '\\logs.txt' t=threading.Thread(target=UseThread,args=(data1, data2, data3, devID, prodCode, ScreenshotRef, logFile)) threads.append(t) t.start() for i in range(0,len(threads)): threads[i].join()
问题是这样的。当 while 循环完成一次运行并继续第二次运行时,代码会在monkeyrunner 等待连接时挂起。确切地说,这是它停止的部分
设备 = MonkeyRunner.waitForConnection(10, devID)
消息说“猴子命令唤醒”。
我认为问题与连接有关,而不是与线程有关,因为我试图在建立连接的那条线之前打印一些东西并且它可以工作。
当您已经建立连接时,建立连接是否存在问题?我需要先关闭以前的连接吗?