在 Selenium 测试中使用 Facebook 帐户
Posted
技术标签:
【中文标题】在 Selenium 测试中使用 Facebook 帐户【英文标题】:Use Facebook account in Selenium tests 【发布时间】:2017-12-19 10:13:47 【问题描述】:我正在使用 selenium 进行集成测试,所以它会点击我们的网络应用程序,登录 Facebook 并执行一些操作。 Facebook 开始屏蔽在这些测试中使用的帐户,并发送一封电子邮件“你是从新地方登录 Facebook 吗?”
所有登录都是从相同的 IP、相同的操作系统(Linux、Jenkins)和 safari 浏览器完成的。我已经多次标记是我登录的(嗯,它的詹金斯;p)。我们每 30 分钟运行一次这些测试 - 有时几天可以正常运行,有时帐户会立即被阻止。
是否有任何方法可以将帐户标记为“安全”以进行此类操作?
更新:
似乎测试帐户是一种方法 - 以前没有见过它们: https://developers.facebook.com/docs/facebook-login/testing-your-login-flow/.
【问题讨论】:
报废Facebook
违反了他们的 ToS
。请改用 Facebook APIs
。
但我想测试用户将使用的相同流程。在这些测试中使用不同的方式没有意义,因为它会测试不同的东西; )
恐怕:(你可以登陆Facebook Jail
改用测试用户:developers.facebook.com/docs/apps/test-users
thx @luschn,可能在你写之前一分钟发现它:) 并且到目前为止似乎工作
【参考方案1】:
出于测试目的,您可以使用测试用户:https://developers.facebook.com/docs/apps/test-users
您可以在应用设置中甚至使用 API 创建/管理它们。
【讨论】:
以上是关于在 Selenium 测试中使用 Facebook 帐户的主要内容,如果未能解决你的问题,请参考以下文章
Selenium webdriver在facebook时间线上加载来自状态/照片的评论
我在 Selenium 中使用 chrome 浏览器启动 facebook 时遇到以下异常,任何人都可以建议我解决这个问题
org.openqa.selenium.ElementNotInteractableException:键盘无法访问元素:向 Facebook 中的 FirstName 字段发送文本时