Slide 1

Slide 1 text

Reckoner における Datadog Browser Test の活用事例 2024/11/20 Japan Datadog User Group Meetup#6 Copyright © 3-shake, Inc. All Rights Reserved.

Slide 2

Slide 2 text

自己紹介 門脇 拓巳 (KADOWAKI Takumi) 株式会社スリーシェイク Incubation 事業部 Reckoner 開発チーム データ処理系 Scala 製アプリケーションの 開発を行いつつ、インフラ業務などを担当 直近はパフォーマンスチューニングや Observability の推進など X (Twitter): @nomadblacky GitHub: NomadBlacky

Slide 3

Slide 3 text

Reckoner というデータ連携サービスを開発してます https://reckoner.io/

Slide 4

Slide 4 text

アジェンダ - Datadog Browser Test の概要 - Reckoner での活用

Slide 5

Slide 5 text

Datadog Browser Test とは - ブラウザ操作を記録して Datadog 上から E2E テストを実行できる機能 - 類似: Playwright, Puppeteer, Mabl - テストの作成はブラウザ上で完結するためコードを書く必要がない - 様々なデバイス、ロケーション、ブラウザを選択可能 - 実行結果はステップごとに実行時間、スクリーンショット、 HTTPリクエスト、JavaScript のエラー など確認可能

Slide 6

Slide 6 text

Copyright © 3-shake, Inc. All Rights Reserved. Reckoner での Browser Test 活用 6

Slide 7

Slide 7 text

サービスの死活監視 30分に1回の頻度でログインなどの 重要な機能が動作するかテスト 失敗時には Slack に通知 ユーザー目線でサービスの正常性が確認できる

Slide 8

Slide 8 text

デプロイ時の動作確認 ※ Cloud Build での例 デプロイ完了後に Browser Test を実行 datadog-ci というコマンドが公式から提供されており CLI 上から Synthetics テストを実行可能 –public-id オプションで実行したいテストを指定

Slide 9

Slide 9 text

変更によりサービスの主要機能が壊れていないか確認 手動でやっていた動作確認の手間が省けた

Slide 10

Slide 10 text

パフォーマンス計測 Browser Test には実行時間などのメトリクスが用意されており タグとして step_id などが含まれている

Slide 11

Slide 11 text

パフォーマンス計測 Notebook にテストの結果をまとめた例 パフォーマンスチューニングのエビデンスとして プルリクエストに添付するなど、変更の説得性が向上した

Slide 12

Slide 12 text

まとめ Datadog Browser Test とは - ノーコードで E2E テストを構築 - 様々なデバイス・ロケーション・ブラウザでテストできる機能 Datadog Browser Test を導入して - テストを定期実行することで、 ユーザー目線でサービスの死活監視ができるようになった - デプロイ後にテストを実行することで、 変更による異常を検知したり、動作確認の手間を省くことができた - テスト結果のメトリクスを用いることで、 パフォーマンスチューニングのエビデンスを残すことができた

Slide 13

Slide 13 text

最後に スリーシェイク はエンジニアを募集しています! - https://jobs-3-shake.com/