您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

登录后保持会话-selenium-javascript

登录后保持会话-selenium-javascript

您可能只在处理计时问题。硒移动 非常快 。比您作为用户进行交互的方式要快得多。因此,它通常以似乎无法预测的方式起作用。但这仅仅是因为Selenium的运行速度比您作为用户的速度快得多。为了解决这个问题,您应该充分利用Selenium的内置功能driver.wait。例如:

const button = driver.wait(
  until.elementLocated(By.id('my-button')), 
  20000
);

button.click();

上面的代码一直等到my-buttonDOM中出现ID 为ID的按钮,然后单击它。最多等待20000毫秒,但是只要按钮可用,它将立即完成。

因此,在您的情况下,如果在用户成功登录后仍有可用的东西,则可以等待该元素,然后再转到代码中的新页面

顺便说一句,我也不确定为什么要使用getPageSource()?这似乎是获取所需内容的一种非常笨拙的方法。那不是您可以获取内容的元素中的内容吗?

我写了一篇有关如何使用Selenium和Node.js编写可靠的浏览器测试文章,它可以帮助您更详细地理解本文中的上述代码示例,以及可以用来可靠地等待数据库中各种条件的其他技术。浏览器。

javascript 2022/1/1 18:22:35 有322人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶