El 14 de septiembre de 2017, publicamos una versión revisada de nuestra Política de privacidad. Tu uso continuado de video2brain.com significa que aceptas este documento revisado, por lo que te recomendamos que dediques unos minutos a leerlo y comprenderlo.

Desarrollo web: Control de calidad automatizado

Verificar que un sitio está online con PhantomJS

Prueba ahora LinkedIn Learning sin cargo y sin compromiso.

Prueba gratis Mostrar modalidades de suscripción
En esta lección vamos a utilizar PhantomJS para realizar una prueba funcional que nos permita acceder una dirección de internet, verificar el estado de un sitio web y determinar si nuestra web es accesible en línea.
07:14

Transcripción

Vamos a aprender ahora cómo examinar si un sitio web se encuentra disponible y se encuentra online. Acá, estoy creando un documento que se llama "Examinar sitio online.js" que es donde voy a incluir las pruebas de PhantomJS para examinar si un sitio web se encuentra disponible. Una vez que ya tengo creado este documento, voy a crear una variable que se va a llamar "var sitioweb" y acá voy a importar un componente que se llama "webpage", así que vamos a poner "require('webpage')". Y una vez que tengamos importado este componente webpage vamos a utilizar el comando "create". Todos estos comandos están disponibles porque nosotros hemos instalado PhantomJS dentro del sistema. Ahora, una vez que ya tenemos definido este valor, que en este caso va a ser "sitioweb", donde vamos a crear un "webpage" o una página web, vamos a definir también una variable que voy a utilizar para definir un URL, una dirección de una página web. Puedo definir acá cualquier página web, así que vamos a poner http: y simplemente vamos a poner "Google" para hacer una prueba rápida, pero tú puedes poner acá cualquier dirección que desees utilizar y que desees probar si está disponible en internet. Ahora, una vez que ya tenemos definidos estos valores, voy a utilizar esta variable llamada "sitioweb", que ahora se ha convertido en un objeto de tipo "webpage". así que voy a definir que "sitioweb" abra, y este "webpage" va a abrir una dirección de internet. ¿Qué dirección de internet va a abrir? Precisamente la que tenemos definida en nuestro variable URL, en este caso va a ser "google.com". Ahora, una vez que lo abra, vamos a invocar una función y esta función que vamos a ejecutar, vamos a utilizar también un argumento, en este caso, vamos a ponerle "status", donde nos va a devolver la información del status en que se encuentra la página. Analicemos un poco qué es lo que está sucediendo acá. Cuando yo abro o utilizo el comando "open" dentro del objeto "webpage", voy a abrir esta dirección. Esto va a generar una llamada asincrónica, y una vez que se genere esa llamada y que hagamos la carga de este URL, vamos a invocar esta función. Esta función está gestionándose acá en modo de "callback". O sea, una que tengamos los datos del URL, vamos a ejecutar esta función. Esta función se va a ejecutar únicamente cuando tengamos una respuesta, ya sea de que funciona correctamente o no el URL en el que estamos trabajando. Por eso, precisamente es que estamos capturando este argumento llamado "status". Una vez que ya tenemos la información sobre el estatus de nuestro URL, podemos mostrar y procesar la información. Por ejemplo, voy a utilizar acá un "consult.log" y vamos a llamar "status" para ver cuál es la información que nosotros estamos obteniendo de este script. Para ejecutarlo, simplemente vamos a llamar "PhamtpmJS" y vamos a llamar el archivo "examinar_sitio_web.js". Tenemos acá un error. Veamos, dice "examinar sitio online", vamos a volver a ejecutarlo. Listo. Tenemos que el mensaje que nos está enviando nuestro URL es que Google nos da un "status" de "success". Eso quiere decir que está funcionando correctamente. Vemos que todavía permanece abierto nuestro código, así que vamos a presionar "Ctrl + C" para cerrarlo y vamos a agregar una línea que se va a llamar "phantom exit". Ahora, un detalle importante que vale la pena mencionar es que "phantom exit" va a cerrar el navegador Phantom, pero nosotros necesitamos que se cierre únicamente en el momento en que nosotros ya tenemos información como te acabo de decir, esto es una función asincrónica. Si yo pongo acá "Exit", vamos a tener que Phantom se va a cerrar una vez que nosotros hagamos la llamada a "google.com" en este caso. Pero necesito que Phantom se cierre una vez que yo tenga la respuesta de esa llamada, asi que voy a poner este "phantom exit" dentro de la función que se ejecuta después de tener la información, así se va a ejecutar todo correctamente. Ahora, una vez que ya tenga la información, voy a crear acá una condicional que nos va a permitir saber si se está ejecutando correctamente la información. Así que vamos a decir que, en el caso de que "status" sea "success", vamos a mostrar un mensaje dentro de la consola que nos va a decir que el sitio web está funcionando porque sabemos que todo funciona correcto. Ahora, en el caso de que no, vamos a mostrar también un mensaje que nos va a decir que no se puede cargar el sitio web. Solamente para mejorar un poco este código vamos a definir acá el "else" y vamos a definir que en el caso de que tengamos el comando "fail" "status" nos va a dar dos diferentes comandos que van a ser "success" o "fail". "success" en el caso de que todo funcione correctamente y "fail" en el caso de que falle. Vamos a guardar vamos a ejecutar una vez más el código, ahora sí "phantomjs examinar_sitio_online.js", presionamos "Enter". Vamos a estrar a Google, vamos a revisar y tenemos que el sitio web funciona. Una vez que se realizan las pruebas, Phantom se cierra, y tenemos disponible la consola. Ahora, vamos a cambiar esta dirección y voy a poner una dirección que yo sé que está incorrecta. Así que vamos a poner acá una dirección que va a ser "google." y una extensión que sabemos que no existe. Vamos a guardar. Vamos a ejecutar otra vez nuestra prueba y vamos a ver que, inmediatamente, dice que no se puede cargar el sitio web que estamos revisando, en este caso es este URL. Puedes probarlo con la dirección de la página en la que tú trabajas y puedes ver si está funcionando o no dentro de PhantomJS, y así podemos verificar que se encuentre disponible en nuestra página web.

Desarrollo web: Control de calidad automatizado

Aprende a emplear herramientas para controlar la calidad en tus desarrollos web de forma automática y anticiparte a las posibles incidencias del código que puedan surgir.

2:53 horas (21 Videos)
Actualmente no hay comentarios.
 
Fecha de publicación:16/05/2017

Este curso video2brain está disponible como descarga y para ser visualizado online. ¡Pero no hace falta que decidas entre las dos opciones! Al comprar el curso, disfrutarás de ambas posibilidades.

La descarga te permite ver las lecciones sin estar conectado/a a internet y supone una navegación fácil y ágil entre capítulo y capítulo. Si vas a trabajar en diferentes ordenadores o si no quieres descargarte el curso completo, entra en la web con tus datos de acceso y disfruta directamente de tus vídeos online. Te deseamos que disfrutes de este curso y te resulte de mucha utilidad.

Estamos a tu disposición si tienes cualquier tipo de duda o pregunta.