我有一个项目,我在其中使用 Selenium 来测试 Facebook 身份验证。我创建了一个 Facebook 应用程序,在该应用程序中创建了一个测试用户,并使用 Facebook 登录创建了一些测试。直到现在,它还在工作。但在过去的两周里,Facebook 发生了一些变化,我的测试失败了。这是由于权限对话框中的界面更改(我通过他的 ID 定位按钮)。第二个问题是我没有从 Facebook 测试用户那里得到电子邮件地址,而是一个超过 75 个字符的代理电子邮件(我的数据库字段长度在我使用的框架中是硬编码的)。
如果我以普通用户身份登录,它工作正常并且我得到这个权限框:
但是当我以我创建的测试用户身份登录时(通过应用程序开发人员角色中的“切换到”),我得到这个框:
我在大约 2 周前对其进行了测试,它仍然有效。今天它改变了。所以我的问题:
- 如何取回测试用户的旧权限框?
- 如何获得真实的电子邮件地址而不是代理?
谢谢!
最佳答案
我在使用 Auth Dialog 时遇到了同样的问题。我尝试了一些具有各种设置的新旧应用程序,包括 3 月/4 月。启用/禁用 2013 重大更改,但没有帮助。
不过,我想我可以帮助您解决电子邮件问题。当您以测试用户身份登录并转到帐户设置页面时,您将看到测试用户的主要电子邮件地址。默认情况下,这应该像我附上的图片一样非常长。
Facebook 平台返回此 primary email address .如果您使用测试用户帐户通过身份验证对话框并查看 the privacy setting page ,您会发现默认的主电子邮件地址已与该应用共享。您必须为测试用户提供一个新的电子邮件地址,并通过 account setting page 将新的电子邮件地址设置为主要电子邮件地址。 .
关于Facebook 测试用户和授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14957668/