[英]Python Sleep is way off
我在这里写了一个小python脚本,并且正在Windows 7 Pro(64位)上的dos提示符下运行它。 问题是我正在调用time.sleep(1)
及其平均睡眠30秒。 现在,我可以容忍毫秒级的差异,但是30倍? 那有点太难处理了。 这是我正在做的事情的一个摘要:
for i in range(10):
print("start loop at " + str(i))
try:
if self.driver.find_element_by_link_text(text).is_displayed():
break
except:
print("pass")
pass
time.sleep(1)
else:
print("failing on timeout")
self.fail("time out")
所有这些(您可能会猜到)都包装在一个由unittest运行的类中。 我什至不知道从哪里开始进行故障排除。
编辑:从Selenium IDE生成的python代码是垃圾...
最有可能的time.sleep不是元凶,而是函数:
self.driver.find_element_by_link_text(text).is_displayed():
如果10秒超时更重要,则调用函数10x可以在运行循环之前进行时间戳记,然后查看是否已过去10秒。
import time
timestamp = time.time()
while time.time() < timestamp + 10:
print("start loop at " + str(i))
try:
if self.driver.find_element_by_link_text(text).is_displayed():
break
except:
print("pass")
pass
else:
print("failing on timeout")
self.fail("time out")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.