Si vous trouvez les sujets, les agents utilisateur et le real browser monitoring, difficiles, ne vous inquiétez pas; vous n'êtes pas seul. Les malentendus autour des agents utilisateurs et de leur application au real browser monitoring sont les sujets les plus fréquemment traités par notre équipe de support. Une réponse courte suit :

Les Real Browser Checks (Full Page Check, Real Browser Monitoring et Monitoring des transactions) utilisent un navigateur réel (tout comme les visiteurs de votre site) pour obtenir et charger le contenu de votre site web. Le navigateur génère un agent utilisateur qui informe vos serveurs sur l'environnement de votre utilisateur. L'agent utilisateur permet au serveur de renvoyer un contenu optimisé pour l'environnement spécifique défini par l'agent utilisateur. Vous pouvez manipuler l'agent utilisateur sur vos moniteurs pour tester le contenu destiné à d'autres navigateurs, systèmes d'exploitation et périphériques tels que les téléphones mobiles et les tablettes.

En fait, pas si court que ça, mais si la réponse courte vous satisfait, génial ! Pour nous autres, creusons le sujet un peu plus. Voyons d'abord les trois principaux composants des communications HTTP.

Les acteurs

La communication est un chemin à double sens entre deux parties; l'un demandant des informations et l'autre donnant des informations. Ce qui facilite cette information est le langage, et pour que les deux parties se comprennent, elles doivent utiliser le même langage. Jetons un coup d’œil aux acteurs :

  • Client : Le client demande quelque chose à une ressource. Le client peut être un navigateur Internet ou un autre type d'application logicielle comme un robot d'indexation web.
  • HTTP : Le langage en commun. Le protocole de transfert hypertexte définit clairement la sémantique de la communication.
  • Serveur : Le serveur renvoie les informations au client, personnalisées pour ce client en fonction de l'agent utilisateur.

Un client utilise une requête HTTP pour demander des informations au serveur et le serveur renvoie les informations sous la forme d'une réponse HTTP. Alors, comment tout cela s'intègre-t-il dans les real browser checks et les agents utilisateurs ? Commençons par l'agent utilisateur.

Qu'est-ce qu'un agent utilisateur ?

Un agent utilisateur est un champ spécifique de la requête HTTP qui contient des informations sur le client. Le serveur recherche des mots spécifiques dans le texte et ignore tout le reste, donc basé sur ce qu'il trouve ou ne trouve pas dans le texte de l'agent utilisateur, le serveur construit le contenu optimisé pour le client. L'agent utilisateur comprend :

  • Type de navigateur et version
  • Système d'exploitation et version
  • Moteur de rendu

Pour compliquer les choses, vous verrez que les agents utilisateurs incluent des informations comme, par exemple, le texte "Mozilla/5.0" (présent dans la plupart des agents utilisateurs des navigateurs) qui signale simplement au serveur que ce client est compatible avec ce navigateur. Dans l'exemple suivant, l'agent utilisateur provient d'un PC de bureau Windows 10 64-bits utilisant un moteur de rendu Gecko s'exécutant sur un navigateur Firefox 57.

Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:57.0) Gecko/20100101 Firefox/57.0

Comme vous pouvez le voir dans l'exemple ci-dessous, l'agent utilisateur Chrome indique au serveur qu'il s'agit d'un navigateur Mozilla/5.0, d'un navigateur Safari et d'un navigateur Chrome.

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.84 Safari/537.36

Qu'est-ce qu'un real browser check ?

Comme décrit ci-dessus, un client peut être n'importe quelle application logicielle capable de communiquer sur Internet, et un navigateur Internet n'est qu'un des types de clients. Les applications logicielles peuvent se contenter de communiquer dans le format brut, mais vos utilisateurs finaux n'aimeraient pas tellement ça. Au lieu de cela, pour les utilisateurs finaux, le navigateur prend tout le contenu retourné, l'analyse et l'affiche visuellement à l'écran.

Vous pouvez tester votre site en utilisant un type de moniteur de base ou un real browser check. Nos points de contrôle peuvent utiliser un navigateur ou s'en passer selon le type de moniteur que vous avez sélectionné. Les moniteurs HTTP et HTTPS de base génèrent une requête et l'envoient au serveur (aucun navigateur utilisé). Lorsque l'ordinateur de point de contrôle reçoit la réponse, il recherche un code de résultat, peut-être un contenu spécifique, et quelques autres éléments de base. La réponse n'est jamais traitée, les images ne sont jamais téléchargées et les fichiers de script ne sont jamais exécutés. Ce processus vous indique si votre site est disponible ou pas.

Lorsque vous choisissez de surveiller avec un véritable navigateur, nos ordinateurs de point de contrôle ouvrent une fenêtre de navigateur et envoient une requête à votre serveur, tout comme les visiteurs de votre site qui utilisent un navigateur. La réponse est reçue, traitée, les images téléchargées, les fichiers script exécutés, les fichiers CSS appliqués et la page apparaît dans la fenêtre du navigateur. Le real browser check tel que le Full Page Check peut vous donner les temps de connexion et de chargement pour chaque élément de la page ainsi que tout contenu défaillant.. Nous faisons même une capture d'écran lorsque se produit une erreur de page.

Alors, quel est la différence entre les agents utilisateurs et Real Browser Monitoring ?

Vous pouvez modifier l'agent utilisateur pour les deux types, moniteurs sans navigateur et moniteurs basés sur le navigateur. Vous aurez à modifier l'agent utilisateur pour les moniteurs de base si vous voulez juste vérifier le contenu spécifique à certains environnements utilisateurs. Vous verrez que l'utilisation d'un vrai navigateur est plus puissante. En modifiant l'agent utilisateur, vous pouvez tester les performances et le contenu de la page pour presque tous les environnements utilisateur. Regardons quelques exemples :

Les utilisateurs utilisent de plus en plus leurs smartphones

Le smartphone est en train de rapidement dépasser le PC de bureau en tant qu'outil de préférence des utilisateurs, et il est donc extrêmement important de savoir que vos serveurs répondent rapidement et correctement avec un contenu adapté. À moins de faire du test manuel, vous pouvez penser qu'il n'y a pas grand-chose à faire pour tester votre site pour les mobiles ? Pas vrai. L'utilisation d'agents utilisateur avec le real browser check permet d'émuler n'importe quel périphérique, taille d'écran et navigateur sur mobile. Vos serveurs répondront avec le contenu pour le mobile, et nos real browser checks chargeront le contenu. Vous trouverez ci-dessous des agents utilisateur pour les appareils, les systèmes d'exploitation et les navigateurs les plus répandus.

Android Chrome

Mozilla/5.0 (Linux; Android 7.0; SM-G930V Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.125 Mobile Safari/537.36

iPhone Safari

Mozilla/5.0 (iPhone; CPU iPhone OS 6_1_4 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10B350 Safari/8536.25

Amazon Fire

Mozilla/5.0 (Linux; U; Android 5.1; locale ; deviceBuild/build)AppleWebKit/webkit (KHTML, like Gecko) Version/4.0 Chrome/chrome Safari/safari

Tester les navigateurs non pris en charge

Actuellement, des tests natifs sont possibles avec Chrome, Internet Explorer et "Phantom JS", et d'autres seront ajoutés bientôt. L'utilisation de la dernière version du navigateur natif est idéale pour tester vos utilisateurs qui mettent leurs navigateurs à jour régulièrement, mais beaucoup d'utilisateurs ne le font pas. Alors, même si votre site fonctionne correctement avec le dernier navigateur Chrome, comment fonctionne-t-il avec les versions précédentes ? En modifiant l'agent utilisateur, vous pouvez tester n'importe quelle version du navigateur.

Testez d'autres systèmes d'exploitation

Un navigateur Chrome s'exécutant sous Mac OSX peut fonctionner de manière très différente du même navigateur Chrome fonctionnant sous Windows 10. La seule façon de savoir à coup sûr est de modifier votre agent utilisateur pour spécifier d'autres systèmes d'exploitation et versions. Si la vérification au point de contrôle utilise le navigateur natif, l'agent utilisateur utilise par défaut le système d'exploitation et la version de navigateur du point de contrôle.