51Testing软件测试论坛

标题: 发现一个问题:Android 手机,同时运行 appium 和 adb 时,日志收集不全 [打印本页]

作者: 测试积点老人    时间: 2020-6-8 09:54
标题: 发现一个问题:Android 手机,同时运行 appium 和 adb 时,日志收集不全
我在我们Android项目里增加了一个日志输出(700ms一次),单独运行日志过滤时没有问题,能收集16个左右。
[attach]128882[/attach]
但是如果放到appium里,同样的代码,却最多只能收集8个左右,而却很大概率只能收集2~3个,数量差距很明显。
[attach]128883[/attach]
刚开始寻找原因时,发现appium的日志里有好多使用了adb,怀疑是同时使用adb影响了其稳定性,但是下面这种方式又可以一个不落的保存所以日志。
[attach]128884[/attach]
虽然勉强算是解决了问题,可是不知道哪里出的问题,也不知道怎么查。。。。
这是代码,想试验可以复制:
  1. import os
  2. from multiprocessing.dummy import Pool as ThreadPool
  3. import time
  4. import signal


  5. def ur(a):
  6.     if a == 1:
  7.         print time.ctime()
  8.         try:
  9.             time.sleep(12)
  10.             pidd = os.getpid()
  11.             os.kill(pid=pidd, sig=signal.SIGKILL)
  12.         except Exception, e:
  13.             print e
  14.             int('adsadsads')
  15.     elif a == 2:
  16.         print time.ctime()
  17.         aa = list([])
  18.         while 1:
  19.             bb = os.popen("adb shell logcat -t 1 |grep dropped:").readlines()
  20.             if len(bb) > 0:
  21.                 if len(aa) > 0:
  22.                     if bb[0] != aa[-1]:
  23.                         aa += bb
  24.                         print len(aa)
  25.                 else:
  26.                     aa += bb
  27.                     print len(aa)


  28. pool = ThreadPool(4)
  29. lists = list([1, 2])
  30. pool.map(ur, lists)
  31. pool.close()
  32. pool.join()
复制代码




作者: 海海豚    时间: 2020-6-9 10:45
https://testerhome.com/topics/9075 参考下
作者: 郭小贱    时间: 2020-6-9 11:35
这个还真的不是很清楚,坐等大佬解决...
作者: bellas    时间: 2020-6-9 13:48
来看看
作者: litingting0214    时间: 2020-6-9 16:21
来学习




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2