我有一个机器人测试,该机器人测试调用一个从文件中读取大量数据并对其执行计算的过程。
该过程是用C ++编写的,并通过用于机器人的Python API进行调用。
在Python中,我有运行过程并将其记录到控制台的命令,然后在函数的最后有一条打印语句:
verify = run(command).decode("utf-8")
logger.console(verify)
.
.
.
logger.console("finished the test")
当我通过命令行(没有Robot)运行相同的命令时,我的过程完成了,因为我将结束的调试语句打印到控制台。但是,当通过Robot通过Python调用相同的进程时,它似乎正在命令中间停止,然后执行我的最终打印语句(见上文)。
样本预期输出(通过命令行运行时):
.
.
.
2020/03/19+23:54:46.646569 25.600000
2020/03/19+23:54:46.646575 15.600000
2020/03/19+23:54:46.646588 26.600000
finished the test
实际输出(通过机器人运行时):
.
.
.
2020/03/19+23:54:46.646569 25.600000
2020/03/19+23:5
finished the test
我是Robot的新手,我认为这可能是时间问题?由于我仅以两种不同的方式运行同一命令,因此我认为它们都可以做相同的事情(完成或停在中间)。但是通过命令行,它可以按我期望的那样完成和执行,但是通过机器人,它似乎被捕获并停止了(没有打印错误),其余的关键字执行了。
有什么想法吗?谢谢!