这就是我需要做的事情。我有2个设备,我需要使用monkeyrunner进行测试。这是一个使用python和monkeyrunner的自动化测试。我想同时为2个设备执行测试,所以我想到了使用线程。
这是代码
导入线程
import datetime import os,sys
从com.android.monkeyrunner
导入ConfigParser从datetime导入MonkeyRunner,MonkeyDevice,MonkeyImage
从java.net导入datetime import hashlib
从com.ziclix.python.sql导入SocketException
导入zxJDBC
def UseThread(data1,data2,data3,devID,Code,ScreenshotRef, 日志文件):
device = MonkeyRunner.waitForConnection(10, devID) 'threaded code' 'initialization'
file = open(os.path.dirname(os.path.realpath( file ))+ '\ Samples.txt','r')1:
1时: line = 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等待连接时挂起。确切地说,这是它停止的部分
device = MonkeyRunner.waitForConnection(10,devID)
消息显示“Monkey command wake”。
我认为问题与连接有关,而不是与线程有关,因为我试图在该行之前打印一些连接并且它可以工作。
当您已经建立连接时是否存在连接问题?我需要先关闭以前的连接吗?
答案 0 :(得分:0)
MonkeyRunner waitForConnection仅适用于一个设备。你不能运行两次。您可以从另一个实例
运行