PHP, Seleniumでページの読み込み時間を測定する。

WordPressで作ったサイトをリリースする前に、ページがちゃんと機能しているかを自動テストするスクリプトをSelenium&PHPで書きました。 ついでにそこで処理の負担になっているところ(サーバーからのレスポンスに時間がかかっているところ)を発見し、wordpressのコードをブラッシュアップしてやろうと試みて見ます。

そこで今回は、このブラッシュアップに必要な、seleniumでページの読み込み時間を取得する方法についてまとめたいと思います。

seleniumのcapabilitiesでネットワークのログを有効にするやり方もありましたが、今回はJavascriptを実行してwindowオブジェクトから読み込み時間を取得するやり方について書きます。

リクエストしてからロードイベントが終わるまでの時間の差分を取ることで読み込み時間を得られます。

result = $this->driver->executeScript("return (window.performance.timing.loadEventEnd - window.performance.timing.requestStart) / 1000");
echo($result);

他にもリダイレクト時間やDOMの構築時間など様々な値が同様に取得できます。 詳しくはこちらを参考にして見てください。

Navigation Timing APIの仕様

ハックノートをフォローして
最新情報をチェックしよう

AWS構築サービスの全てをまとめた資料を公開中

ハックノート(TOWN株式会社)では、AWSの導入や構築支援を行っています。AWS導入メニューやサービス詳細、構成例や費用を掲載した資料をダウンロードできます。

AWSの新規導入やAWSへの移行を検討の際は、ぜひご参考ください。


APNコンサルティングパートナー

TOWN株式会社はAmazon公認コンサルティングパートナーです。