Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

性能測定機能を追加 #184

Open
wants to merge 1 commit into
base: dev
Choose a base branch
from

Conversation

iijimakazuyuki
Copy link

ページ遷移したときなどにWeb API経由でブラウザから性能情報を取得する機能を追加しました。
これにより、「スクリーンショットは一致していても時間がかかりすぎている」といった問題がないかどうかもテストできるようになり、使いどころがいっそう増えると考えています。
既存機能を邪魔しないように、設定に「性能測定モード」を追加し、これを明示的にONにした時のみ機能を利用できるようになる実装にしました。

ご確認のほど、よろしくお願いいたします。
パッケージの分け方、追加すべきテストなどございましたら、ご教示ください。

使い方

本機能は PtlTestBase を拡張した TelemetricTestBase を基底クラスとしてテストクラスを記述する使い方を想定しています。
具体的な書き方は iijimakazuyuki/hifive-pitalium-samples@7b779ef をご覧ください。
TelemetricTestBasePtlTestBase と同様、Ruleクラスでテスト結果の出力を行っており、
スクリーンショットのフォルダ内に
testCaptureTop_performance_WINDOWS_chrome.html
というような名前のレポートがテストメソッド単位で出力されるようになります。
ここには各ページ遷移時の性能情報が記録されています。

ちなみに、このレポートはThymeleafテンプレートを用いており、ユーザが差替可能です。
具体的な差替方法は iijimakazuyuki/hifive-pitalium-samples@458ef4e をご覧ください。

このレポートは、下記メソッド実行時に性能情報が追記されます。

  • WebDriver#get()
  • WebElement#click()
  • WebElement#submit()

なお、上記メソッドで検知できないタイミングの場合は、PerformanceTelemetry#measurePerformance() を実行すれば、手動で性能情報を取得できます。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant