Comment tester la vitesse d'une page gardée derrière la page de connexion?


17

Pour la page publique, je peux utiliser pingdom.com pour calculer le temps de réponse / temps de disponibilité d'une page sur une certaine période de temps.

Cependant, pingdom ne peut pas chronométrer le temps de réponse d'une page Web protégée derrière une page de connexion. Par exemple, pingdom ne peut pas vérifier le temps de réponse de ma boîte de réception Gmail, car je devrais fournir mon nom d'utilisateur et mon mot de passe gmail à pingdom si je le souhaite.

Puis-je de toute façon obtenir le temps de chargement de la page Web pour la page Web qui nécessite une paire nom d'utilisateur / mot de passe?


Ne pouvez-vous pas simplement exposer la page publiquement pendant la durée du test?
JCL1178

Cela dépend vraiment du type d'outil que vous souhaitez utiliser. La plupart des serveurs Web prennent en charge la notion http (s): // user: password @ server, par exemple.
initall

1
@ JCL1178, je ne peux pas car ces pages sont très personnalisées, au même titre que la boîte de réception gmail / le mur facebook est personnalisé.
Graviton

@initall, pouvez-vous élaborer? La plupart des serveurs Web, pouvez-vous me donner des conseils à ce sujet?
Graviton

Si le document est protégé par HTTP BASIC AUTHENTICATION, l'incorporation du mot de passe du nom d'utilisateur est prise en charge par Apache et d'autres. Cela dépend de votre configuration. Google pour des phrases comme "http mot de passe d'authentification de base de l'utilisateur dans l'URL".
initall

Réponses:


4

Mise à jour 2017

L' outil Lighthouse développé par Google peut être exécuté comme une extension Chrome sur les pages connectées, et même contre Chrome sur un véritable appareil mobile (que vous devez utiliser à la place d'émulateurs dans la mesure du possible). Lighthouse fournit des audits de performances, d'accessibilité, d'applications Web progressives, etc.

Voici une capture d'écran de Lighthouse vérifiant une page de notes Google Keep:

Capture d'écran du phare sur la page de connexion

En plus d'utiliser l'extension sur les pages connectées, vous pouvez également le faire sur la CLI .


bizarre, ils ne mentionnent pas cela sur la «page d'extension de vitesse de la page dépréciée» que nous avons remplacée par un nouveau nom
Muhammad Umer

En ce qui concerne la mise à jour 2017 sur lightspeed - cela fonctionne bien pour l'authentification (c'est-à-dire que la page est protégée par l'authentification), mais le port sur lequel il écoute (lorsque Google Chrome est ouvert en mode débogage), il capture uniquement la séquence d'authentification et aucune action par la suite. Idéalement, toutes les actions effectuées dans Google Chrome devraient être enregistrées et simulées depuis son écoute sur ce port. Je recherche des statistiques sur une page qui se charge après quelques actions supplémentaires après l'authentification. Mais malheureusement, cela ne se produit pas :(
kkk

3

Vous pouvez également installer une extension de navigateur telle que Yslow ou PageSpeed ​​Insights et exécuter le test directement à partir de votre navigateur.


4
Mise à jour 2017: Yslow n'est plus maintenu et ne fonctionne plus. Le plugin PageSpeed ​​pour Chrome a besoin d'un site Web non protégé, il ne s'entend pas avec l'authentification de base.
Mateng

1

Créez une porte dérobée (n'oubliez pas de la supprimer plus tard!)

Par exemple: L'accès via la page boîte de réception.php? LoginForTest = 1 vous connectera automatiquement en tant qu'utilisateur avec l'ID 25, ou celui que vous souhaitez utiliser pour le test, et chargera ce contenu sans effectuer d'autres vérifications d'authentification.

En supposant que vous écrivez OOP, vous ne pourrez modifier que quelques lignes de code dans la classe d'authentification pour charger le contenu d'un certain point de vue utilisateur si certaines données GET sont définies.

Quant à l' authentification HTTP - vous avez déjà obtenu la plupart des réponses dans les commentaires. Utilisez la syntaxe @ dans l'URL pour vous connecter en tant qu'utilisateur.

Si vous ne pouvez toujours pas accéder au formulaire de connexion - essayez d'utiliser Firebug pour des tests plus basiques - n'oubliez pas de lancer plusieurs fois pour obtenir une moyenne correcte et de ne pas comparer les données de Firebug avec les données de pingdom ou autre services similaires car ils pourraient avoir une méthode différente pour obtenir les horaires.


1
En règle générale, les portes dérobées sont dangereuses et je ne les recommanderais pas. Dans cet exemple, si pingdom.com était compromis, quelqu'un pourrait avoir accès aux URL de porte dérobée pour accéder aux informations utilisateur potentiellement sensibles sur votre site.
joshuahedlund

Le code POO n'aide pas. Avoir un site / une application / un code qui fonctionne de manière modulaire et / ou accepter des paramètres le font. Les options de porte dérobée sont un bon conseil.
PatomaS


0

Une approche possible consiste à créer une porte dérobée qui ne fonctionne que pour les adresses IP sur liste blanche. La plage IP de Pingdom, par exemple, est disponible sur leur site , vous pouvez donc autoriser temporairement les demandes de cette plage IP sans authentification.

Il est possible d'usurper l'adresse IP demandeuse, mais comme le demandeur ne recevra pas de données de votre serveur (elles seront envoyées à l'adresse IP qu'il usurpe), cette approche peut être suffisamment sécurisée pour vos besoins. Bien sûr, il est préférable de ne pas laisser une porte dérobée ouverte lorsque vous n'en avez pas besoin.


0

Si ce que vous voulez savoir est le temps de réponse du site pour une première demande, ou une réponse de séparation pour démarrer la négociation, le ping est plus que suffisant car cela est indépendant du contenu récupéré, de la négociation ou des en-têtes. Cela dépend uniquement de l'autorisation des requêtes ICMP.

Si vous devez calculer le temps de chargement, c'est différent, la meilleure façon de le faire, et étant donné que vous mentionnez que la page / le site est personnalisé, est de créer une page avec la même quantité et le même type de contenu, créer un cache spécifique des règles sur vous .htaccesset sur l’utilisation de l’outil dont vous souhaitez tester la réponse et le temps de chargement.

Bien sûr, cette page doit faire le même travail que l'application normale, juste avec des données non sensibles, pour cela, vous devez créer de fausses données sur l'ID de la base de données qui est associée, puis la page doit être générée avec la même technologie côté serveur si vous en utilisez une pour les pages normales et qu'elle doit récupérer et charger les mêmes images.

Bien sûr, c'est si vous voulez des données précises. Si vous ne voulez pas faire ce travail ou si vous n'avez pas besoin de données aussi précises que celles que vous obtiendrez avec cette procédure, vous pouvez utiliser des outils comme la abcommande d'Apache ou tout autre outil de simulation.


0

Vous pouvez utiliser Google Chrome pour ce faire

Ouvrez les outils des développeurs (Appuyez sur Commande + Option + I (Mac) ou Contrôle + Maj + I (Windows, Linux))

Accédez à l'onglet Réseau.

Actualiser la page.

Vous verrez une liste de toutes les ressources que votre page charge. Une fois terminé, vous pouvez voir le temps total nécessaire pour charger chaque ressource en bas

J'ai vérifié cela après la connexion à mon Gmail. Comme cette capture d'écran:

entrez la description de l'image ici Il existe une option "désactiver le cache" qui peut être utile pour voir le temps de chargement de la première fois qu'une page se charge, par rapport à un visiteur répété.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.