【问题标题】:How to achieve the automated test case for remember me functionality如何实现记住我功能的自动化测试用例
【发布时间】:2018-05-09 18:28:27
【问题描述】:

我有一个用户名、密码和记住我复选框,我如何验证一旦用户登录并关闭浏览器并勾选记住我,下次他们登录时,用户应该直接被带到登录的仪表板.如何在 selenium 中进行测试。

所有可用的解决方案要么已过时,要么不起作用

【问题讨论】:

  • 这就是cookie的基本功能,你试过了吗?
  • 是的,我试过了,但它不起作用。我正在尝试以下代码 - Set allCookies = driver.manage().getCookies();司机.close(); //打开一个新的浏览器窗口 driver = new ChromeDriver(); //恢复之前会话的所有cookie for(Cookie cookie : allCookies) { driver.manage().addCookie(cookie); } 然后调用 web 的 driver.get(),但我收到以下错误-org.openqa.selenium.WebDriverException:无法设置 cookie
  • 现在我的 cookie 正在工作,但它没有达到目的,它没有测试“记住我”的功能,它只是复制一个会话的 cookie,然后将其渲染到另一个新会话,上面的代码中没有记住我复选框的作用
  • 尝试为gmail.com编写相同的cookie并使用它,它会帮助您了解cookie的功能。
  • 您也可以继续使用@Murthi 解决方案。对于给定的场景,这听起来像是一个很好的解决方法。

标签: java selenium


【解决方案1】:

默认情况下,selenium 每次启动浏览器时都会创建新的配置文件。因此,当我们保存凭据时,信息将与配置文件位置一起存储。因此,它将无法用于下一个会话。

为了克服上述问题,您可以创建一个配置文件并每次都使用 selenium 加载它。因此,如果我们单击记住我,它将存储在配置文件位置。所以下次你启动它时,它就会被加载。

我还没有尝试过,这只是我的想法。你可以试试告诉我。

【讨论】:

  • 对我来说听起来很合乎逻辑!
  • @Murthi 你能指导我这个配置文件的位置吗,你能详细说明一下解决方案吗,我不明白这个配置文件是什么以及它如何帮助检查记住我的功能
  • chrome 或 firefox 加载默认配置文件,这是我们手动启动时所有配置和其他数据所在的位置。但是 selenium 每次都会启动具有新配置文件的浏览器。当我们单击记住我时,凭据信息将存储在配置文件位置。当我们第二次启动时,它会使用该信息。但硒每次使用不同的配置文件。下次它无法获取存储的凭据。如果我们让 selenium 每次都使用相同的配置文件,它将能够再次获取存储的凭据。
  • 正确,但在这种情况下,用户的密码和名称也会被保存,因此用户是否标记了复选框并不重要,我要测试的是,当我取消选中记住我复选框并加载网站,然后应该显示登录页面,当我勾选它并关闭浏览器并重新加载它时,应该加载登录页面
  • 是的,当我们手动执行时也是如此。为了克服这个问题,您可以使用两个配置文件,一个已选中,另一个未选中。否则,您需要使用代码创建配置文件并保存并在测试后删除。
猜你喜欢
  • 2018-09-05
  • 2012-08-08
  • 2021-07-06
  • 2019-02-16
  • 1970-01-01
  • 2013-09-04
  • 2011-12-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多