Pregunta

Por lo general, desarrollo mis sitios web en el tronco, luego fusiono los cambios en una rama de prueba donde se colocan en un sitio web 'beta' y finalmente se fusionan en una rama activa y se colocan en el sitio web activo.

Con una aplicación de Facebook las cosas son un poco complicadas.Como no se puede ver una aplicación de Facebook a través de un navegador web normal (tiene que pasar por los servidores de Facebook), no es fácil darle a cada desarrollador su propia versión del sitio web para trabajar y probar.

No he encontrado nada sobre la mejor manera de desarrollar y probar una aplicación de Facebook sin dejar de tener un sitio web estable y activo que los usuarios puedan usar.Mi pregunta es la siguiente: ¿cuál es la mejor práctica para organizar el desarrollo y las pruebas de una aplicación de Facebook?

¿Fue útil?

Solución

La forma en que mi socio y yo lo hicimos fue que cada uno creamos nuestras propias aplicaciones privadas de Facebook, que apuntaban a nuestra dirección IP donde trabajábamos en ella.Como trabajamos en el mismo lugar, cada uno de nosotros eligió un puerto diferente e hicimos que nuestro enrutador reenviara ese puerto a nuestra dirección IP local.Fue un poco lento actualizar una página, pero funcionó muy bien.

Otros consejos

Intente actualizar su archivo de hosts (for windows users @ c:\windows\System32\Drivers\etc\hosts) con una entrada que enrutará todas las solicitudes de su dominio activo de regreso a su máquina.

Entonces 127.0.0.1 mywebappthatusesfacebook.com.

Luego asegúrese de que su aplicación se esté ejecutando en la raíz de su servidor web.@ http://localhost/ Luego, vaya a mywebappthatusesfacebook.com en su navegador y debería redirigir directamente a su máquina local.Facebook no notará la diferencia.Espero que esto ayude

Tendrás que agregar las versiones troncal y de prueba como aplicaciones diferentes y probarlas usando cuentas de prueba.También puede utilizar una sola aplicación y cambiar su URL de destino entre ciclos.

Probar aplicaciones de Facebook sigue siendo un proceso bastante primitivo.

Generalmente configuro una aplicación de prueba que es una copia completa de la configuración de producción dentro del entorno de desarrollo de FB que utiliza un túnel SSH para apuntar a mi servidor de desarrollo.Puede configurar tantas aplicaciones como necesite dentro de FB; generalmente tengo una aplicación de desarrollo, una aplicación de prueba y producción.Tanto la preparación como la producción se encuentran en servidores "en vivo" en lugar de en un túnel SSH.

Luego, en su aplicación, utiliza cualquier idioma/marco/herramienta de servidor que esté a su disposición para cambiar la configuración de FB según el servidor.En Rails, la joya de Facebooker en realidad tiene soporte integrado para diferentes configuraciones de FB.

Una vez hecho todo esto, desafortunadamente, las pruebas siguen siendo una cuestión de ejecutar la aplicación dentro del propio Facebook.Utilizo Selenium para automatizar tanto como sea posible.

La mejor manera de hacer esto:

Eliminar 'Dominio de aplicación' de 'Información básica'

Establezca la 'URL del sitio' del sitio web en:"http://localhost/" .

Así de sencillo.

(Esto solo se aplica si no tiene un sistema activo ejecutándose en paralelo al entorno de prueba.En ese caso, consíguete otra llave.)

Lo tenemos configurado de forma muy parecida a Toby.Una serie de archivos de configuración para cada desarrollador, que tiene la información de ID de la aplicación de Facebook (una aplicación diferente para cada desarrollador), páginas separadas donde está alojada la aplicación y git ignora los archivos de configuración.Somos LAMP con Code Igniter y es similar a Rails en que podemos configurar el entorno en 1 archivo, que apunta a la configuración con las constantes de Facebook.

Ampliarse a Selenium, utilizando pruebas unitarias para pruebas de modelos.

Para las pruebas locales simplemente utilizamos una aplicación diferente a la del servidor.En nuestro caso, la URL de Canvas está configurada en localhost.local:8000.

Sólo tienes que asegurarte de que cuando uses Facebook Connect escribas localhost.local en el campo de dirección del navegador y no solo localhost.

Para probar una aplicación de lienzo o pestaña, es más rápido si usa el comando "abrir iframe en una nueva pestaña" de Firefox.De esta forma se conservan la sesión y las cookies de Facebook.

Otra solución es NGROK

https://ngrok.com/

Abre un túnel público hacia tu aplicación local

Ejemplo en mi aplicación Rails simplemente escribiendo

./ngrok 3000

yo obtengo

http://630066fe.ngrok.com -> 127.0.0.1:3000 
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top