我正在尝试编写测试,我等到某个消息写入浏览器控制台日志。一旦达到超时,就应该等待。
我能够获取控制台日志输出(使用python和webdriver)一次。我的代码是这样的:
@when("I reach the end of the movie")
def step_impl(context):
start_ts = time.time()
while time.time() - start_ts < 180:
if is_finished_playing(context):
break
time.sleep(0.2)
def is_finished_playing(context):
for entry in context.browser.get_log('browser'):
print(entry['message'])
if "Finished Playing" in entry['message']:
return True
但是,在我首先调用is_finished_playing()
函数之前,它只适用于浏览器显示的内容。我似乎无法弄清楚如何继续轮询控制台日志以进行进一步更新。
另外 - 正如你所看到的,我没有使用WebDriverWait,尽管它似乎是明显的选择。我也无法使它发挥作用。
有什么想法吗?