• /
  • EnglishEspañolFrançais日本語한국어Português
  • Se connecterDémarrer

Cette traduction automatique est fournie pour votre commodité.

En cas d'incohérence entre la version anglaise et la version traduite, la version anglaise prévaudra. Veuillez visiter cette page pour plus d'informations.

Créer un problème

Introduction au moniteur de navigateur scripté

Les navigateurs scriptés émulent une expérience utilisateur personnalisée en écrivant des scripts aux navigateurs qui naviguent sur votre site Web, effectuent des actions spécifiques et garantissent la présence d'éléments spécifiques. sélénium Webdriver pilote un moniteur scripté. Chaque fois que votre script s'exécute, New Relic crée un navigateur Chrome ou Firefox entièrement virtualisé basé sur Sélénium qui navigue sur votre site Web et suit chaque étape script . Synthétique monitoring inclut un éditeur script de style IDE qui suggère des fonctions, un localisateur et d'autres éléments pour simplifier le script. Consultez la référence du navigateur scripté pour obtenir une liste de toutes les fonctions disponibles.

Comment créer un moniteur de navigateur scripté

  1. Allez à one.newrelic.com > All capabilities > Synthetic monitoring.

  2. Cliquez sur Create monitor.

  3. Sélectionnez la tuile User flow / functionality pour tester la disponibilité et la fonctionnalité de votre site dans différents emplacements.

    Create monitor - User flow / functionality
  4. Configurer le moniteur. Remplissez les champs souhaités. Ajoutez un nom pour votre moniteur. Sélectionnez les navigateurs et les appareils émulés que vous souhaitez tester.

    Create monitor - configure monitor
  5. Cliquez sur Select locations pour sélectionner l’emplacement où vous souhaitez tester le moniteur.

    Create monitor - select locations
  6. Cliquez sur Write script pour ajouter votre script décrivant les actions que vous souhaitez que le moniteur entreprenne. Le moniteur pré-remplit l'éditeur avec un exemple script à partir duquel vous pouvez travailler, ou vous pouvez le supprimer et repartir de zéro.

  7. Cliquez sur Validate si vous souhaitez tester votre script. Cela peut prendre quelques minutes selon le script.

  8. Cliquez sur Save monitor.

Visiter une URL

Tous les scripts commencent par spécifier l'URL vers laquelle le moniteur doit naviguer. Pour spécifier une URL, appelez $webDriver.get("url"):

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

Actions de séquence

Étant donné que WebDriverJS est asynchrone, les actions de script peuvent parfois s'exécuter dans le désordre. Pour forcer les actions de script à s'exécuter dans l'ordre, utilisez le mot-clé await :

await $webDriver.get("https://my-website.com");
await $webDriver.findElement($selenium.By.linkText("Configuration Panel"));

Vous pouvez également encapsuler chaque action dans un appel then(function(){}) . Mais, dans ce cas, la fonction encapsulée doit return chaque fonction asynchrone pour s'assurer qu'elles se terminent avant que le script ne passe à autre chose :

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

Pour connecter plusieurs actions en séquence, encapsulez chaque action dans un appel then(function(){}) et chaînez les appels ensemble :

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

Localiser les éléments

Une fois que vous avez spécifié une URL pour le moniteur, vous souhaiterez généralement localiser un élément particulier sur la page. La localisation d'un élément permet de vérifier sa présence sur la page, et permet également d'interagir avec l'élément de page.

Vous pouvez localiser des éléments par leur class, id, link text, name ou même XPath. Pour trouver ces attributs, utilisez les outils de développement de votre navigateur ou consultez la source du code de votre site Web. Pour une liste de toutes les fonctions du localisateur, voir localisateur: Find élément de page.

Interagir avec les éléments

Parce qu'un moniteur scripté pilote un véritable navigateur Chrome ou Firefox fonctionnant sous Sélénium, le moniteur scripté peut interagir avec les éléments de la page de la même manière qu'un utilisateur le ferait. Par exemple, le monitorant peut cliquer sur un lien, saisir du texte dans un champ de recherche, etc. Pour obtenir la liste des actions disponibles, voir ActionSequence : Lier plusieurs actions.

Tout d’abord, localisez l’élément de page, puis appelez une fonction d’interaction :

Attente et délais d'attente

Les éléments de page volumineux, tels que les images ou le contenu dynamique complexe, peuvent prendre beaucoup de temps à charger. Votre script peut échouer si le moniteur tente d'interagir avec ou de trouver un élément qui n'a pas encore été chargé.

Pour éviter ces problèmes, définissez des conditions d'attente qui suspendront le script jusqu'à ce que l'élément de page spécifié soit présent, ou séquencez les actions manuellement. Pour une liste des conditions, voir Conditions : Mettre en pause et attendre les conditions.

Important

Après un temps d'exécution maximum de trois minutes, New Relic arrête manuellement le script.

manuellement les log résultats dans le script log

Vous pouvez également manuellement log les résultats du moniteur script log dans le . Utilisez le logging pour dépanner un script: pour découvrir quelle étape de votre script échoue, incluez une fonction log avec chaque étape clé de votre script.

Important

La longueur maximale log est de 50 000 octets. les logs de script supérieurs à 50 000 octets sont tronqués.

Débloquer les services d'analyse

Synthetics bloque l'exécution par défaut du script des services d'analyse populaires . Vous pouvez autoriser l'exécution d'un script pour un ou plusieurs services spécifiés. Cela permet au script du service de s'exécuter et de collecter des données comme il le ferait pour un véritable utilisateur.

//Allow Google Analytics scripts to run
await $urlFilter.addToAllowList(['google-analytics.com']);
//Visit https://my-website.com
await $webDriver.get('https://my-website.com');

Personnaliser l'agent utilisateur

Vous pouvez personnaliser l'agent utilisateur du navigateur scripté pour garantir que tous les correctifs spécifiques au navigateur dans votre application fonctionnent correctement, ou pour contourner un mécanisme de sécurité afin de filtrer un site interne.

//Simulate Internet Explorer 10.6
$headers.add('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
await $webDriver.get('http://httpbin.org/user-agent');

Important

Cela usurpe uniquement l'en-tête HTTP de l'agent utilisateur pour la requête adressée au serveur. Cela ne change pas la valeur de navigator.userAgent.

Importer des modules optionnels

Vous pouvez également importer de nombreux modules Node.js populaires pour améliorer votre suite de tests, automatiser l'insertion de données de test et simplifier les fonctions complexes. Pour plus d'informations, voir Importation de modules Node.js.

Important

For Non-Legacy Runtimes

L'environnement de script contient des répertoires protégés en écriture. Si votre script nécessite le stockage de fichiers, ajoutez l'un des chemins suivants au nom de fichier :

  • runtime/input-output/input/
  • runtime/input-output/output/
Droits d'auteur © 2025 New Relic Inc.

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