Je recherche un outil pour tester un site Web à partir d'une ligne de commande Linux.
De la sortie, j'ai besoin de connaître la réponse http (codes d'état) mais aussi de comparer le temps qu'il faut pour télécharger les différents éléments du site.
Merci d'avance.
Réponses:
Vous pouvez essayer
wget
avec-p
option:Il vous dira combien de temps il faut pour télécharger chaque élément et les codes retour pour chaque demande.
la source
wget -p URL -O /dev/null
Veuillez consulter Apache Benchmark:
Apache Benchmark
Cela devrait vous donner un aperçu des performances de votre page.
la source
Vous voudrez peut-être examiner les options suivantes
curl
:--write-out
- affiche l'une des différentes variables liées au temps--trace-time
- Ajoute un horodatage à chaque trace ou ligne verbeuse--verbose
--include
- (HTTP) Inclut l'en-tête HTTP dans la sortie.--trace-ascii <file>
- Permet un vidage de trace complet de toutes les données entrantes et sortantes, y compris les informations descriptivesEt l'option suivante de
wget
:--timestamping
- Activer l'horodatagela source
curl --trace-ascii <file> --trace-time -o /dev/null <url>
était exactement ce dont j'avais besoin. Merci!Le sélénium et le curl sont de bonnes options selon votre objectif. En outre, un utilitaire que j'aime beaucoup est
twill
. Plus d'informations sont disponibles sur http://twill.idyll.org/ .C'est bien car il a son propre petit langage spécialisé pour remplir les formulaires, valider les liens et vérifier les codes de réponse. Comme il ne s'agit que de code Python, vous pouvez facilement importer les bibliothèques et automatiser vos tests vous-même si vous souhaitez faire quelque chose de différent.
la source
Utilisez curl pour obtenir l'en-tête de la page et chronométrez le processus:
envelopper cela dans une boucle de temps et vous êtes prêt à partir. De la même manière, vous pouvez vérifier tous les éléments si vous connaissez l'URL.
la source
essayez un outil en ligne de commande appelé «siège» comme indiqué ici
la source
L'outil que vous choisissez dépend de ce que vous souhaitez mesurer et de la complexité du site.
Si le comportement du site dépend des cookies (par exemple, l'utilisateur doit se connecter), ab / curl / wget (décrit dans d'autres réponses) ne suffira pas. Une solution consiste à utiliser http :: recorder / www :: mechanize .
Toutes les données que vous demandez se trouvent dans vos journaux de serveur Web - et un simple script awk les renverra sous une forme plus lisible.
Il s'agit d'un très mauvais indicateur de performance (bien qu'il soit utile pour surveiller la santé d'un système de production). À l'exception des ressources volumineuses / lentes telles que les rapports volumineux, les images ISO, les fichiers multimédias, la perception des performances a très peu à voir avec le temps pris pour traiter une seule demande - et il est vraiment difficile de mesurer cela avec précision (simplement en ajoutant% D dans votre journal apache semble résoudre le problème mais ignore les poignées de main TCP, la négociation SSL, les effets de mise en cache, les temps de recherche DNS).
Une meilleure solution consiste à utiliser quelque chose comme Boomerang - mais qui s'exécute dans un navigateur compatible Javascript. Bien que cela donne un meilleur indicateur des performances perçues que le suivi des demandes HTTP individuelles, il s'appuie sur les événements du navigateur pour dériver une valeur pour les performances - mais les performances reçues concernent tout le temps nécessaire au rendu de la fenêtre d'affichage (encore une fois, il existe des outils pour cela - jetez un œil aux outils filmstrip dans WebPageTest ).
Il y a également l'argument concernant la mesure des performances réellement fournies aux utilisateurs du site (RUM) par rapport aux tests synthétiques.
la source
Si vous avez besoin de quelque chose de plus grand que de boucler et / ou de wget, il y a aussi du sélénium
la source
Je pense que pour exécuter le test de performance, vous pouvez essayer JMeter . Vous pouvez enregistrer votre test à l'aide du proxy intégré. Il s'exécute également en mode texte, local ou distribué. Vous pouvez enregistrer vos résultats au format csv ou xml. Si vous utilisez le format xml, vous pouvez également stocker le contenu de la page.
la source
Pour vérifier les en-têtes, j'aime
httpie
( docs ).Installation
Usage
la source