Developing and Testing a Facebook application通常,我在主干上开发我的网站,然后将更改合并到测试分支,然后将其放在"测试版"网站上,最后将它们合并到活动分支中,然后放入活动网站。 使用Facebook应用程序时,有些棘手。 由于您无法通过普通的Web浏览器查看Facebook应用程序(必须通过Facebook服务器),因此您无法轻松地为每个开发人员提供自己的网站版本以进行测试。 在继续拥有一个可供用户使用的稳定实时网站的同时,我还没有找到有关开发和测试Facebook应用程序的最佳方法的任何信息。 我的问题是,组织Facebook应用程序的开发和测试的最佳实践是什么?
尝试使用一个条目更新主机文件
所以 然后,确保您的应用程序正在Web服务器的根目录下运行。 @ http:// localhost /然后在浏览器中转到mywebappthatusesfacebook.com,它应立即重定向回您的本地计算机。 Facebook不知道区别。希望这可以帮助 我和我的合作伙伴这样做的方式是,我们每个人都制作了自己的私有Facebook应用程序,该应用程序指向我们在其中工作的IP地址。由于我们在同一个地方工作,因此我们每个人都选择了一个不同的端口,并将路由器转发给该端口到我们的本地IP地址。刷新页面有点慢,但是效果很好。 您必须同时将主干版本和测试版本添加为不同的应用程序,并使用测试帐户对其进行测试。您也可以使用单个应用程序,并在周期之间切换其目标URL。 测试FB应用程序仍然是一个相当原始的过程。 我通常会设置一个测试应用程序,该应用程序是FB开发环境中生产设置的完整副本,该开发环境使用SSH隧道指向我的开发服务器。您可以在FB中根据需要设置任意数量的应用程序-我通常有一个开发应用程序,一个暂存应用程序和产品。暂存和生产都在"实时"服务器上,而不是在SSH隧道上。 然后,在您的应用程序中,可以使用任何可用的语言/框架/服务器工具来根据服务器切换FB配置。在Rails中,Facebooker gem实际上内置了对不同FB配置的支持。 一旦完成所有这些操作,不幸的是,测试仍然是在FB本身中运行应用程序的问题。我使用Selenium来使尽可能多的自动化。 最好的方法是: 从"基本信息"中删除"应用程序域" 将网站的"站点URL"设置为:" http:// localhost /"。 这么简单。 (这仅适用于没有与测试环境并行运行的实时系统的情况。在这种情况下,请给自己另一个密钥。) 对于本地测试,我们只使用与服务器不同的应用程序。在我们的例子中,Canvas-URL设置为localhost.local:8000。 您只需要确保在使用facebook connect时,可以在浏览器的地址字段中输入localhost.local而不是localhost。 如果您使用Firefox的"在新标签页中打开iframe"命令,则对于测试画布或标签页应用程序,它会更快。这样可以保留来自Facebook的会话和cookie。 我们的设置非常类似于Toby。每个开发人员的一系列配置文件,包括Facebook APP ID信息(每个开发人员一个不同的应用程序),托管该应用程序的单独页面,以及git忽略配置文件。我们是使用Code Igniter的LAMP,它与Rails相似,因为我们可以在1个文件中设置环境,该文件指向带有Facebook常量的配置。 使用单元测试进行模型测试,从而扩展到Selenium中。 另一个解决方案是NGROK https://ngrok.com/ 它为您的本地应用程序打开了一条公共隧道 只需输入以下内容即可在我的Rails应用程序中使用示例
我懂了
|