Facebook测试用户和auth

时间:2013-02-19 12:36:49

标签: facebook email testing dialog updates

我有一个项目,我使用Selenium来测试Facebook身份验证。我创建了一个Facebook应用程序,在这个应用程序中创建了一个测试用户并使用Facebook登录创建了一些测试到现在为止,它正在发挥作用。但在过去的两周里,Facebook发生了一些变化,我的测试失败了。这是由于权限对话框中的界面更改(我按其ID定位按钮)。第二个问题是我没有从Facebook测试用户那里获得电子邮件地址,而是一封长度超过75个字符的代理邮件(我的数据库字段长度在我使用的框架中是硬编码的。)

如果我以普通用户身份登录,它运行正常,我会收到此权限框:

enter image description here

但是当我以我创建的测试用户身份登录时(通过在应用程序的开发人员角色中切换到'),我得到了这个框:

enter image description here

我测试了它~2周前,这还没有用。今天它改变了。所以我的问题:

  • 如何取回测试用户的旧权限框?
  • 如何获取真实的电子邮件地址而不是代理?

谢谢!

2 个答案:

答案 0 :(得分:0)

我遇到了与Auth Dialog相同的问题。我尝试了一些新的和新的应用程序,包括3月/ 4月的各种设置。 2013启用/禁用了重大更改,但它没有帮助 但是,我想我可以帮助您解决电子邮件问题。当您以测试用户身份登录并转到帐户设置页面时,您将看到测试用户的主要电子邮件地址。默认情况下,这应该是一个非常长的像我附加的图像。

default email address configuration for facebook test user

Facebook平台返回此primary email address。如果您使用测试用户帐户传递Auth Dialog并查看the privacy setting page,您会发现默认的主电子邮件地址与应用共享。您必须为测试用户提供新的电子邮件地址,并通过account setting page将新的电子邮件地址设置为主电子邮件地址。

答案 1 :(得分:0)

为什么Login Dialog与测试用户不同?

通过测试用户,您可以看到登录对话框的未来。事实上,这不是“not working”,但这是2012年12月公布的更新。让我引用:

  

我们的登录对话框经过重新设计,以便更轻松   了解应用请求的权限。我们简化了   演示文稿并更新了我们的语言以便更清晰。

     

“基本信息”已重命名为“公开个人资料和朋友列表”   反映共享的内容。应用访问您的公开个人资料   得到你的名字,头像,年龄范围,性别,语言,国家   和其他公共信息。

来源:Providing People Greater Clarity and Control, developers.facebook.com/blog

您不与常规用户见面此更新的原因是Facebook不会同时更新所有人。它们部分启动更新,具体取决于国家/地区,帐户类型或我忽略的其他一些参数。

专用于开发者帐户的部分更新(unified_message FQL table)示例:

  

我们为注册开发人员提供此API的早期访问权限   直到新的邮件系统广泛可用。您   应该将消息表用于生产应用程序   当前时间。

在我们的案例中,我们现在知道测试用户可以访问更新,但也有人说:

  

我们已经推出了许多这些改进作为我们的一部分   iOS6集成,现在正在更广泛地推广它们。


关于代理电子邮件

事实上,代理电子邮件是任何用户保持其真实电子邮件匿名的一种方式。您考虑代理电子邮件。

  1. 加入应用时,用户可以选择真实电子邮件和代理电子邮件:Proxy email choice

  2. 在连接到您的应用时,您需要的其他内容是未验证其帐户的用户,这可能是here和{{3 }}

  3. 那么,为什么测试用户会回复代理电子邮件?因为测试用户(机器人和虚假电子邮件)未验证其电子邮件

  4. 您看到至少有3个案例(最后,测试用户就是一个很好的例子),您需要处理这些代理电子邮件。它们由开发人员hereincidentally满足,并且不容忽视。对于您的情况,您仍然可以尝试禁止有代理电子邮件的测试用户访问您的应用。但是接受它们,不应强迫它们共享原始电子邮件地址。更好的解决方案是验证测试用户的电子邮件:

    1. 连接到提供代理电子邮件的测试用户帐户
    2. accidentally(此处需要密码),
    3. 转到电子邮箱并单击验证链接
    4. 将新电子邮件地址设为主要
    5. 测试用户现在应该提供原始电子邮件,而不再是代理!