【问题标题】:How to let method run in background如何让方法在后台运行
【发布时间】:2016-02-03 00:59:24
【问题描述】:

我正在从机器人关键字调用 python 方法。但我不希望机器人框架等到测试完成,因为我想连续运行该方法。如何继续运行下一个测试用例? 例如我正在从机器人关键字调用启动日志(python 方法)

def start_logs(self):
    subprocess.call('adb logcat > test.txt', shell=True)

启动日志后,我想运行其他测试用例。但是机器人框架一直在等待上面。

【问题讨论】:

标签: python adb logcat robotframework android-logcat


【解决方案1】:

有一个关键字! Start Process 将调用任何关键字,但不会等待它返回。不要忘记将 Process 库添加到您的项目中。

【讨论】:

  • 启动进程不能与关键字一起使用
  • @maiksaray:是的。您将 Start Process 与命令一起使用,而不是关键字。
【解决方案2】:

你可以这样做:

def start_logs(self):
    subprocess.Popen(['adb', 'logcat', '>', 'test.txt'])

subprocess.Popen 用作cmets 中提到的Colonel Thirty Two

【讨论】:

  • 当我在上面运行而不是写入文件时,它只是将 adb logcat 打印到控制台?看起来“>”不起作用?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-02-04
  • 2014-02-11
  • 2015-07-13
  • 1970-01-01
相关资源
最近更新 更多