Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
freeeにおける AI を用いた ブラウザ動作確認の自動化の取り組み
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
freee
PRO
October 20, 2026
Technology
7
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
freeeにおける AI を用いた ブラウザ動作確認の自動化の取り組み
freee 技術の日 2026のセッション資料です。
freee
PRO
October 20, 2026
More Decks by freee
See All by freee
freeeに点在する案件・プロジェクトを統合するための案件マスタ開発
freee
PRO
0
4
freeeにおけるSoftware Factory
freee
PRO
0
6
AIから最も使われやすいfreeeへ
freee
PRO
0
4
新卒が会社に問い直させるもの―freeeが新卒採用を続ける理由と、たけのこ人材の育ち方―
freee
PRO
0
5
認知負荷との戦い〜 freee AIアシスタントの誕生からハーネス改善まで 〜
freee
PRO
0
2
脱SaaS脳 キャリア25年目の挑戦
freee
PRO
0
5
攻めと守りを両立するデータ基盤 〜中央集権型からデータメッシュへの道のり〜
freee
PRO
0
4
セキュリティチームのAIエージェントを チーム内の誰でも改善できるようにするまで
freee
PRO
0
5
AI Readyな安定性の高いデータ基盤を目指し、120個のデータコントラクトを結んだ話
freee
PRO
0
2
Other Decks in Technology
See All in Technology
二歩目のフロントエンド・ウェブアクセシビリティ
camiha
2
540
子育てエンジニアの可処分時間が減っても成長を諦めない戦い方
sudoakiy
6
4.6k
宣言型部分更新は何を解決しどこへ向かうのか
shuta13
1
450
OptunaHub: ブラックボックス最適化のためのプラットフォーム
pfn
PRO
0
140
サブエージェントと Claude Mods で作る独自 Advisor ツールの話
kenichiodo
2
160
UniFi(ユニファイ)AIカメラの現場活用
ludicmind
1
440
AI導入は済んだ。次は統制を作り替える番だ_AI×開発組織 Summit 2026
techtekt
PRO
0
210
大型犬好きによるPugの紹介
yamanoku
1
160
JAWSUG TOHOKU 青森支部 「LoGoチャット」のAWS移行で 乗り越えたこと
taketakekaho
0
330
Snapshot Testing in Practice: Predictable and Reliable SwiftUI Views
fespinoza
0
230
⾮構造化データを価値に変える AI エージェント基盤とその組織
ivry_presentationmaterials
0
190
Conditional PED-ANOVA: Hyperparameter Importance in Hierarchical & Dynamic Search Spaces
pfn
PRO
0
130
Featured
See All Featured
Measuring & Analyzing Core Web Vitals
bluesmoon
9
1k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
20k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.5k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
940
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
2
950
Chasing Engaging Ingredients in Design
codingconduct
0
360
A better future with KSS
kneath
240
18k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.4k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
520
Making Projects Easy
brettharned
120
6.8k
A Modern Web Designer's Workflow
chriscoyier
699
190k
Ten Tips & Tricks for a 🌱 transition
stuffmc
1
260
Transcript
freeeにおける AI を⽤いた ブラウザ動作確認の⾃動化の取り組み hachi / kacy / sae 2026年10⽉03⽇
債権‧請求書開発部 部⻑ 基盤QA ⼈事労務QA hachi kacy sae 2022年入社 2018 freee入社(サポート)
2012 新卒でSIer入社(PM/ITSM) freee請求書のアプリケーション エンジニア 2025 QAチームに異動(基盤QA) 2022 edtechでQAにキャリア変更 Rubyist. 2024 freeeにjoinしQAマネージャー
開発で⼤事だけど⼀番時間のかかる作業 3
動作確認 4
このセッションで得られるもの • AIを使った動作確認を安く、早く、うまくやる⽅法 • Playwright CLI と何が違うのか • freeeでどのように活⽤されているのか
よくある開発のフロー コード変更 動作確認 PullRequest 動作確認 マージ Staging デプロイ レビュー 指摘修正
動作確認 Production デプロイ
よくある開発のフロー コード変更 動作確認 PullRequest 動作確認 マージ Staging デプロイ レビュー 指摘修正
動作確認 Production デプロイ
よくある開発のフロー コード変更 PullRequest 動作確認 レビュー 指摘修正 動作確認が多い! 動作確認 マージ Staging
デプロイ 動作確認 Production デプロイ
動作確認こそAIにやってほしい 9
Playwright CLI 10
Playwright CLIやAI Agentブラウザ操作ツールの課題 • Playwright CLI ◦ トークンコスト(が⾼くなることがある) ◦ コンテキストをすぐ消費する
◦ 望んだ結果に辿り着かないこともある • AI Agent がブラウザを操作するツール ◦ AIを使わないと動作しない ◦ 再現性
Playwright CLIやAI Agentブラウザ操作ツールの課題 • Playwright CLI ◦ トークンコスト(が⾼くなることがある) ◦ コンテキストをすぐ消費する
◦ 望んだ結果に辿り着かないこともある • AI Agent がブラウザを操作するツール ◦ AIを使わないと動作しない ◦ 再現性
なぜか • ツールにはプロダクトの知識がない ◦ 適切にコンテキストとして与える必要がある • アクセシビリティツリーを読んでもわからないコンテキスト ◦ ex. このプロダクトの
X という機能は設定画⾯で有効にしてからでな いと使えない
プロダクトの知識の与え⽅ • ソースコード ◦ ブラウザ操作においては余計な情報が多い • 設計ドキュメント ◦ 開発差分のみについて⾔及されがち •
ヘルプページ ◦ 画像など、⼈間寄りのドキュメントになりがち
プロダクトの知識の与え⽅ • ソースコード ◦ ブラウザ操作においては余計な情報が多い • 設計ドキュメント ◦ 開発差分のみについて⾔及されがち •
ヘルプページ もっといい情報源があるじゃない ◦ 画像など、⼈間寄りのドキュメントになりがち
プロダクトの知識の与え⽅ • ソースコード ◦ ブラウザ操作においては余計な情報が多い • 設計ドキュメント ◦ 開発差分のみについて⾔及されがち •
ヘルプページ E2E テスト ◦ 画像など、⼈間寄りのドキュメントになりがち
freee の E2E 管理 • Playwrightベース • 全てのプロダクトの E2E テスト
を⼀つのリポジトリに⼀元管理 • helper や Page Object もそのリ ポジトリで管理している • inowright/inoC はSEQチームが 管理している
freee の E2E 管理 • Playwrightベース • 全てのプロダクトの E2E テスト
を⼀つのリポジトリに⼀元管理 • helper や Page Object もそのリ ポジトリで管理している この知識と操作を Playwright CLI に組み込めばいい
inoC • freee プロダクトの知識と操作を組み込んだ Playwright CLI のラッパー • コマンド‧できること紹介
コマンド inoC • freee プロダクトの知識と操作を組み込んだ Playwright CLI のラッパー • コマンド‧できること紹介
コマンド inoC • freee プロダクトの知識と操作を組み込んだ Playwright CLI のラッパー • コマンド‧できること紹介
Playwright CLI と同じ
inoC inowright-cli help
inoC pages の例
inoC inowright-cli help
inoC helpers の例
よくやる使い⽅ • claude code で /inowright-cli:verify-pr skill を実⾏する • PR
description の動作確認欄を⾒て、claude がいい感じに動作確認す る • 動作確認がshellスクリプトになり、コメントとしてPRに添付される
スキル
スキルで作成した Shell Script 例(抜粋) よくやる使い⽅ • claude code で /inowright-cli:create-script
skill を実⾏する • inowright-cli を使っていい感じに動作確認をしてもらう • 動作確認がshellスクリプトになる
スキルで作成した PR comment 例(抜粋)
スキルで作成した PR comment 例(抜粋)
inoCまとめ • inoC とは E2E 基盤を組み込んだ動作確認ツール • freeeプロダクトでよくやる動作が helper に、ページ構成が
Page Object になっているのでコンテキストを圧縮できる • E2E テスト⾃体が常にメンテナンスされているので陳腐化しない • ユーザーが与えるコンテキストを減らせるので、出⼒のブレを抑えられ る
活⽤事例紹介 32
実際にinoCを使ってみて思ったこと • 4か⽉で12 案件inoCでQA⼯程を回した結果 • 実際に活⽤した結果わかったこと • 安⼼してみんなで使えるようにするために ◦ inowright-cli
信頼性ゲートの今後
私のinoC活用事例と結果( 4か月で12 案件) 自動実行の成果 実績サマリ 自動実行ケース 約926ケース 自動実行由来のバグ起票+バグ疑い 9件 +
6件 →QA開始後すぐのバグ検出に繋がった 推定削減工数( 1ケース20分換算) →エッジケースのバグもしっかり救済 約308時間 自動での修正後確認 4件 34
実際に活用した結果わかったこと 収穫・効果的だった点 (Good) 見えてきた課題・注意点 (motto) 01 リグレッション・ Fix確認の自動化が楽 01 信頼性担保プロセスの未確立による工数超過
02 複数環境の差分比較でデグレード故障を検出 02 不適切な操作( Act)実行パターンの混入 があった 03 データ駆動テストによる圧倒的な網羅性 03 浅い判定による形骸化リスクがあった 04 自動化対象の選定基準( Testability)の言語化 04 非同期処理・タイミング依存による偽陽性の発生 35
inowright-cli 信頼性ゲートの今後 前提:スクリプト実⾏成功 ≠ テスト完了。2層の強固なゲートで品質を担保する必要あり ① 機械lint(危険記述の⾃動検知) ② AI信頼性レビュー(「意味」の検査) ⽬的:「危険な記述パターン」を機械的に即時ブロック
⽬的:機械チェックのすり抜けをログからAIが読解し 批判的に検証 • エラー放置禁⽌:操作失敗を無視しさせない • 裏ルート(API直叩き)禁⽌:正規UI⼿順を遵守 • 確かめず合格禁⽌:アサーション必須 • セキュリティ保護 • ⽭盾:操作前から合格条件を満たしている • うわべ検査:単なる有無や形式的な合格判定 • ⼿順ズレ、判定すり替えなど... 36
活⽤事例の紹介_2 • ⼤量データ投⼊ • リグレッションテスト&バグの原因調査
活用事例① : 大量データ投入 【背景】 新プロダクト(AIアシスタント)をユーザさんに操作して頂くために、デモ事業所 が必要になった • 「実際の事業所に近いデータ 」が必要 •
データ投入対処のプロダクトが多数 ◦ 会計 / 人事労務 / 請求書 / 工数管理 / 販売 など • データ投入者はデータ投入対象プロダクトの知見は皆無
活用事例① : 大量データ投入 【実施にやったこと】 claude code から自然言語で inoC に指示 •
目的とゴールを伝える ◦ 実在する事業所ぽっいデータの種類 / 規模 など • 参照資料を伝える ◦ プロダクトコード / ヘルプ / など
活用事例① : 大量データ投入 【結果】 年度 総収益 当期純利益 2024 4.01億円 2.72億円
2025 5.36億円 3.66億円 2026 6.23億円 4.12億円 • 取引: 1,416 • 取引先: 1,859 / 部門: 127 / 品目: 154 / メモタグ: 98 • ファイルボックスの証憑: 299 • 帳票(請求書ほか6種): 766 • 従業員: 105 • 勤怠: 約1万
活用事例② : リグレッションテスト&バグの起票 【背景】 AIアシスタントで「エンドポイントを特定する仕組み」を変更 ↓ 「AIアシスタントで処理可能な全てのエンドポイントを叩ける 」ことを 確認するリグレッションテストが必要
活用事例② : 挙動確認&バグの起票 【AIアシスタントの特色】 ◦ チャットの履歴が残る ◦ チャットの履歴に下記が残っている ▪ どんな指示をして
▪ どんなエラーが起きたか
活用事例② : 挙動確認&バグの起票 【実施にやったこと】 以下を inoC に伝える • 正確なデータを作成 /
取得したいわけではない ▪ パラメータは必須項目のみで良い ▪ 値は適当に決めて良い • 下記の情報を知りたい ◦ 実行したエンドポイント ◦ 実行結果(httpコード) ◦ チャットのsession_id
活用事例① : 大量データ投入
活用事例② : 挙動確認&バグの起票 【失敗したエンドポイントに関する調査】 ◦ ${チャットのsession_idl} を渡し、失敗の原因調査を依頼 ◦ (通常のバグ報告のフォーマットを参照させた上で)フォーマットに 則って調査結果をJiraに起票するように指示
やってみてわかったこと 最初から完璧に動かすのは厳しいが、以下の手順を踏むとスムーズ ◦ 雑な指示で動かす => 意図通りはない挙動を軌道修正 ◦ 意図通り動いたら大量・並行処理(10〜15並列) 正しく動くための情報を参照させる ◦
ヘルプ / プロダクトのリポジトリ ◦ いったん人が手で動かして記憶・記録させる トークンと時間はそれなりに消費する ◦ 大量データ / 繰り返し実行する処理に対しては非常に有用 ◦ 簡単な挙動は手でやった方が早い
None