Skip to content
dynamis edited this page Mar 3, 2023 · 86 revisions

テスト・検証について

short url: http://urls.jp/gemqa

Web Platform Test

ビルドした Gecko の QA テストは Mozilla が実行しているテスト を参考にする。Renesas RZ/G シリーズではサブセットとして W3C がホストしているテストケース集 WPT (Web Platform Test) を実行している。

WPT は W3C の WPT リポジトリに各ブラウザベンダーなどが Contribute する形でメンテされているテストスイートだが、 Gecko のソースには各バージョン毎に その時点の WPT が含まれている のでそちらを使うのでもよい (日々テストセットが変わるのが嫌なら Gecko ソースのものを使う)。

WPT には主に TestHarness.js test と RefTest のテストがあり (他にも Visual TestManual Testがある)、それぞれ詳しくは以下のページを参照。

手動で単発実行するのであれば http://w3c-test.org/ http://wpt.live/ 配下のファイルを開けばよい。各ブラウザのテスト結果アーカイブは https://wpt.fyi/ に公開されている。

Demos

Gecko Embedded 向けに書かれている比較的シンプル・軽量な HTML コンテンツサンプル

Test

WPT を実行するのは時間が掛かるので、極めて簡易的・部分的なものではあるが、やらないよりはマシというレベルで。

  • ⭐️ HTML 5 TEST
    • 比較用ページ にて PC の Firefox と比べ、サポートしているべき項目がエラーになっていないか、前回のテストと結果が異ならないか確認する (但しテストセット自体が不定期に更新されるので注意)
    • 結果の保存は点数の左下に表示される Save results ボタンで結果 URL が QR コード付きで表示されるのでそれをメモする

サンプルコンテンツ

一般的なウェブサイト、フレームワーク利用り例での表示確認以外に、GPU やハードウェアに依存する実装部分については個別のテストページでの挙動を目視で確認するためのサンプルページ集です。

ハードウェア連携テスト

テスト・検証にハードウェアが必要な機能や API です。

負荷試験 (安定性と性能確認用)

重たいページで警告を出して JS 実行を中断させてしまう dom.max_script_run_time pref を変更してから実行すること。 折角実行したらスコアは ベンチマークページ に記録しておく。

Tips

試験用の設定

必要に応じて応答のないスクリプト警告表示までの時間や履歴やキャッシュの自動削除あるいは無効化などを行って試験します。

  • dom.max_script_run_time0 に設定
  • browser.cache.disk.enablebrowser.cache.memory.enablefalse に設定
  • about:preferences で履歴やキャッシュの自動削除を設定

設定について詳しくは Preferences ページを参照してください。

CPU/Memory ログ

簡単に CPU 利用率・メモリ使用量ログを取る場合は top コマンドをバッチ実行する

top -b -d 1 -n 80 | grep -E "^Mem|\sfirefox|\swebviewer" > top.log &
GDK_BACKEND=wayland timeout -t 60 firefox example.jp

note: 正規表現指定しているのは起動前からログを取るためプロセス番号指定せずコマンド名で指定するが、top コマンド業を含めたくない&メモリ行が欲しいから