• EnglishEspañol日本語한국어Português
  • Inicia sesiónComenzar ahora

Te ofrecemos esta traducción automática para facilitar la lectura.

In the event of any inconsistency between the English version and the translated version, the English versionwill take priority. Please visit this page for more information.

Crea una propuesta

Introducción al script de monitorización del browser

El browser con secuencias de comandos emula una experiencia personalizada del usuario mediante un browser con secuencias de comandos que navega por su sitio web, realiza acciones específicas y garantiza que haya elementos específicos presentes. Para crear un browser con secuencias de comandos, vaya a one.newrelic.com > Synthetic monitoring > Create a monitor y luego seleccione el mosaico User flow / functionality.

Consulte Referencia del navegador con secuencias de comandos para obtener una lista de todas las funciones disponibles.

Scripted monitors are driven by Selenium WebDriver. Each time your script runs, New Relic creates a fully virtualized Selenium-driven Google Chrome browser that navigates your website and follows each script step. Synthetic monitoring includes an IDE-style script editor that suggests functions, locators, and other elements to simplify scripting.

Para ver cómo usar Selenium IDE para registrar su flujo de trabajo y exportarlos en el formato requerido por New Relic, mire este breve video de YouTube (3:49 minutos).

Visita una URL

Todos los scripts comienzan especificando a qué URL debe navegar el monitor. Para especificar una URL, llame a $browser.get("url"):

$browser.get("https://mywebsite.com");

Secuencia de acciones

Debido a que WebDriverJS es asincrónico, las acciones de script a veces pueden ejecutarse fuera de orden. Para forzar que las acciones del script se ejecuten en orden, incluya cada acción en una llamada then(function(){}) :

$browser.get("https://my-website.com").then(function(){
return $browser.findElement($driver.By.linkText("Configuration Panel"));
});

Para conectar varias acciones en secuencia, envuelva cada acción en una llamada then(function(){}) y encadene las llamadas:

$browser.get("https://my-website.com").then(function(){
return $browser.findElement($driver.By.linkText("Configuration Panel"));
}).then(function(){
return $browser.findElement($driver.By.partialLinkText("Configuration Pa"));
});

Localizar elementos

Una vez que haya especificado una URL para monitor, generalmente querrá ubicar un elemento particular en la página. Ubicar un elemento verifica su presencia en la página y también le permite interactuar con el elemento de página.

Puede ubicar elementos por su class, id, link text, name o incluso XPath. Para encontrar estos atributos, utilice las herramientas de desarrollo de su browser o vea el código fuente de su sitio web. Para obtener una lista de todas las funciones del localizador, consulte Localizadores: Buscar elemento de página.

Interactuar con elementos

Debido a que un monitor con secuencias de comandos controla un browser Google Chrome real con tecnología Selenium, los monitores con secuencias de comandos pueden interactuar con el elemento de página de la misma manera que lo haría un usuario. Por ejemplo, el monitor puede hacer clic en un enlace, ingresar texto en un cuadro de búsqueda, etc. Para obtener una lista de acciones disponibles, consulte ActionSequence: vincular varias acciones.

Primero, ubique el elemento de página y luego llame a una función de interacción:

Esperas y tiempos de espera

Los elementos de página grandes, como imágenes o contenido dinámico complejo, pueden tardar mucho en cargarse. Esto puede hacer que su script falle cuando el monitor intenta interactuar o ubicar un elemento que aún no se ha cargado.

Para evitar estos problemas, establezca condiciones de espera que pausarán el script hasta que el elemento de página especificado esté presente, o secuenciar acciones manualmente. Para obtener una lista de condiciones, consulte Condiciones: pausar y esperar condiciones.

Importante

Después de un tiempo de ejecución máximo de tres minutos, New Relic detiene manualmente el script.

Log resultados del script

También puede log manualmente los resultados del monitor en el logdel script. Utilice el registro para solucionar problemas de una script: para descubrir qué paso de su script está fallando, incluya una función log junto con cada paso clave de su script.

Importante

La longitud máxima log es 50.000 bytes. Los registros de script de más de 50.000 bytes se truncan.

Desbloquear servicios de análisis

Sintético bloquea la ejecución de scripts de servicios de análisis populares de forma predeterminada. Puede permitir que se ejecute un script para un servicio específico. Esto permite que el script del servicio se ejecute y recopile datos como lo haría para un usuario real.

//Allow Google Analytics scripts to run
$browser.addHostnameToWhitelist(hostnameArr: ['google-analytics.com']);
//Visit https://my-website.com
$browser.get('https://my-website.com');

Personaliza el agente de usuario

Puede personalizar el agente de usuario del browser con script para garantizar que las correcciones específicas browseren su aplicación funcionen correctamente o para evitar un mecanismo de seguridad para filtrar un sitio interno.

//Simulate Internet Explorer 10.6
$browser.addHeader('User-Agent', 'Mozilla/5.0 (compatible; MSIE 10.6; Windows NT 6.1; Trident/5.0; InfoPath.2; SLCC1; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET CLR 2.0.50727) 3gpp-gba UNTRUSTED/1.0');
//Visit http://httpbin.org/user-agent
$browser.get('http://httpbin.org/user-agent');

Importante

Esto solo falsifica el encabezado HTTP del agente de usuario para la solicitud al servidor. No cambia el valor de navigator.userAgent.

Importar módulos opcionales

También puede importar muchos módulos populares de Node.js para mejorar su conjunto de pruebas, automatizar la inserción de datos de prueba y simplificar funciones complejas. Para obtener más información, consulte Importación de módulos de Node.js.

Copyright © 2024 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.