なんじゃくにっき

プログラミングの話題中心。

ビジュアルリグレッションテスト

ビジュアルリグレッションテストとは

ビジュアルリグレッションテストとは画像を取得して正解画像と比較するテスト

SaaS vs 自前運用

ビジュアルリグレッションテストをE2Eテストの一環として行えるSaaSはいくつかあって、SaaSの利点としては

  • 自前でインフラ構築しなくても良い
  • 非エンジニアでも割と使える

と言う点が挙げられます。

逆に欠点としては - まだ値段が高い - あくまでもサービスとして提供されている機能しか使えず、カスタマイズが自分でできる範囲が限られる

ということがあります。

お値段はそこそこするので個人プロジェクトで使うには厳しいですね。 もっとマーケットが広がって規模の原理でお値段下がるのを期待。

逆に仕事で使うならインフラの保守、テストケースの保守なども考えるとかえってコスト削減が期待できます。

SaaS

それぞれちょっとずつ触らせてもらったことがあります。

価格はだいたいどこもお問い合わせ。

各サービス頻繁に機能追加されていて現状は異なっている可能性があるので鵜呑み厳禁。

Autify

E2EのSaaSで世界的に見て一番有名なのはここじゃないかな。

MagicPod

https://support.magic-pod.com/hc/ja/articles/4408918323225-%E7%94%BB%E5%83%8F%E5%B7%AE%E5%88%86%E3%83%81%E3%82%A7%E3%83%83%E3%82%AF

ビジュアルリグレッションテストで閾値の設定ができる。

除外領域の設定もできるのが面白い。

Mabl

https://university.mabl.com/ja-visual-testing/12261

機械学習ベースでビジュアルリグレッションテスト動かしているのが面白い。

DataDog ブラウザテスト

DataDogは監視&分析のSaaSなんですが、ブラウザテストも機能の1つとしてあります。

スクリーンショットを撮る機能はある(というかデフォで各ステップで撮られる)んですが、ビジュアルリグレッションテストなさそう。

https://docs.datadoghq.com/ja/api/latest/synthetics/#get-a-browser-test

E2E回したあとにAPI経由で画像を取得してreg-cliで比較するプログラムを組めばビジュアルリグレッションテストできなくはなさそうです(試してない)

自前運用

最近流行りのものだとPlaywright + reg-suitじゃないかなーって思います。