gpt4 book ai didi

android - 在机器人中将 python 函数作为关键字运行会导致无限循环

转载 作者:行者123 更新时间:2023-11-29 02:32:41 24 4
gpt4 key购买 nike

我有一个 python 函数:

def send_batch_email(recipient, batch=3, limit=50):
for i in range(0, batch):
for j in range(0, limit):
jsonStr = "{\"Subject\":\""+str(i+1)+"--"+str(j+1)+"\", \"Recipient\":\""+recipient+"\"}"
logger.info(jsonStr, also_console=True)
send_email(jsonStr)
time.sleep(200)

我从机器人框架测试用例中调用:

Validate sync of multiple emails
[Tags] Test2
kill_app %{appName}
Wait Until Keyword Succeeds 5 min 0 sec send batch email %{localAccount}

上述测试用例的控制台输出如下:

{"Subject":"1--1", "Recipient":"test@anuraagbaishya.xyz"}
{"Subject":"1--1", "Recipient":"test@anuraagbaishya.xyz"}
{"Subject":"1--1", "Recipient":"test@anuraagbaishya.xyz"}
{"Subject":"1--1", "Recipient":"test@anuraagbaishya.xyz"}
....(infinitely)

从 Python 控制台运行该函数工作正常,但从机器人框架循环无限运行。对于此循环无限运行的原因以及如何解决此问题的任何意见,我将不胜感激。提前致谢

注意:send_email 函数工作正常,我在运行 send_batch_email 函数时收到了无限多的邮件

最佳答案

从您获得的日志来看,python 函数不断失败,就在日志记录之后的某个地方。
查看 ij 的值——它们永远不会超过 0;所发生的只是 Wait Until Keyword Succeeds 继续执行该函数,并且每次都继续失败。

查看 Robotframework 的执行日志 - 它可能会提供导致失败的详细信息/回溯。如果这没有帮助,请使用此反模式记录异常:

# ...inside the inner loop
logger.info(jsonStr, also_console=True)
try:
send_email(jsonStr)
except Exception as ex: # catch *any* exception
logger.error('Failure: {}'.format(ex))
raise ex

顺便说一句,这不是一个无限循环,它会按照您的调用方式在 5 分钟内完成。

关于android - 在机器人中将 python 函数作为关键字运行会导致无限循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48741983/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com