回答:
あなたは試すことができwget
て-p
オプション:
wget -p http://site.com
各要素と各リクエストのリターンコードをダウンロードするのにかかる時間を示します。
wget -p URL -O /dev/null
次のオプションをご覧くださいcurl
。
--write-out
-いくつかの時間関連変数のいずれかを表示します--trace-time
-各トレースまたは冗長行にタイムスタンプを付加します--verbose
--include
-(HTTP)出力にHTTPヘッダーを含めます。--trace-ascii <file>
-説明情報を含む、すべての着信および発信データの完全なトレースダンプを有効にしますそして、次のオプションwget
:
--timestamping
-タイムスタンプをオンにしますcurl --trace-ascii <file> --trace-time -o /dev/null <url>
まさに私が必要としていたものでした。ありがとう!
目標が何であるかに応じて、SeleniumとCurlは適切なオプションです。また、私がかなり好きになったユーティリティはtwill
です。詳細については、http://twill.idyll.org/をご覧ください。
フォームへの入力、リンクの検証、応答コードのチェックのための独自の小さな専門言語があるため、素晴らしいです。それは単なるPythonコードであるため、何か別のことをしたい場合は、ライブラリを簡単にインポートして、テストを自動化できます。
curlを使用してページのヘッダーを取得し、プロセスの時間を計ります。
time curl -I http://yourpage.com | grep HTTP
それをwhileループでラップすると、準備完了です。URLを知っていれば、すべての要素を確認できるのと同じ方法。
どのツールを選択するかは、測定する対象とサイトの複雑さによって異なります。
サイトの動作がCookieに依存している場合(たとえば、ユーザーがログインする必要がある場合)、ab / curl / wget(他の回答で説明)では十分ではありません。1つの解決策は、http :: recorder / www :: mechanizeを使用することです。
求めているデータはすべてウェブサーバーのログにあります-簡単なawkスクリプトはより読みやすい形式でそれを返します。
サイトのさまざまな要素をダウンロードするのにかかる時間をベンチマークします。
これは、パフォーマンスの非常に低い指標です(ただし、運用システムの正常性の監視には役立ちます)。かさばるレポート、isoイメージ、マルチメディアファイルなどの大きな/遅いリソースを除き、パフォーマンスの知覚は、単一のリクエストの処理にかかる時間とはほとんど関係がありません。これを正確に測定することは非常に困難です(単純に% ApacheログのDは問題を解決しているように見えますが、TCPハンドシェイク、SSLネゴシエーション、キャッシュ効果、DNSルックアップ時間は無視されます)。
より良い解決策は、Boomerangのようなものを使用することですが、それはJavascript対応のブラウザーで実行されます。これは、個々のHTTPリクエストを追跡するよりも知覚されたパフォーマンスのより良い指標を提供しますが、パフォーマンスの値を導出するためにブラウザイベントに依存します-しかし、知覚されたパフォーマンスは、ビューポートがレンダリングするのにかかった時間です(これのためのツールがあります- WebPageTestのフィルムストリップツールをご覧ください)。
また、サイトのユーザーに実際に配信されたパフォーマンス(RUM)と合成テストの測定に関する議論もあります。
ヘッダーを確認するには、httpie
(docs)が好きです。
pip install httpie --user
$ http -h http://serverfault.com/q/124952/113899
HTTP/1.1 302 Found
Accept-Ranges: bytes
Age: 0
Cache-Control: private
Connection: keep-alive
Content-Length: 198
Content-Type: text/html; charset=utf-8
Date: Fri, 06 Jan 2017 10:01:06 GMT
Location: http://serverfault.com/questions/124952/testing-a-website-from-linux-command-line
Set-Cookie: prov=392298d9-103e-7dfc-5b55-8738be46cf3b; domain=.serverfault.com; expires=Fri, 01-Jan-2055 00:00:00 GMT; path=/; HttpOnly
Via: 1.1 varnish
X-Cache: MISS
X-Cache-Hits: 0
X-DNS-Prefetch-Control: off
X-Frame-Options: SAMEORIGIN
X-Request-Guid: 07a25de4-6e16-4aa8-acfc-12b1bbbc6180
X-Served-By: cache-hhn1543-HHN
X-Timer: S1483696865.976259,VS0,VE187