Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AIを活用したソフトウェアテスト技術 - ISTQB Foundation Level - A...
Search
ymgc
December 22, 2024
Technology
1
60
AIを活用したソフトウェアテスト技術 - ISTQB Foundation Level - AI Testing (CT-AI)
ISTQB Foundation Level シラバス - AI Testing (CT-AI) 「11.テストにAIを使う」をもとに作成したもの。
ymgc
December 22, 2024
Tweet
Share
More Decks by ymgc
See All by ymgc
予測する心 - 知覚と行為の統一理論
__ymgc__
0
63
LLMのテスト時計算最適化に関する研究
__ymgc__
0
38
テスト駆動開発(TDD)入門
__ymgc__
0
77
AI に特化した品質特性のテスト
__ymgc__
1
52
Machines of Loving Grace - AIはどのように世界をより良く変えるか -
__ymgc__
1
74
ファシリテーションの技術
__ymgc__
2
82
(論文読み)BigCodeBench: 多様な関数呼び出しと複雑な指示を用いたコード生成のベンチマーキング
__ymgc__
1
73
(論文読み)Very Large-Scale Multi-Agent Simulation in AgentScope
__ymgc__
1
88
7 POWERS
__ymgc__
1
53
Other Decks in Technology
See All in Technology
Introduction to Bill One Development Engineer
sansan33
PRO
0
240
mnt_data_とは?ChatGPTコード実行環境を深堀りしてみた
icck
0
210
OSMnx Galleryの紹介
mopinfish
0
150
Scale Security Programs with Scorecarding
ramimac
0
430
toittaにOpenTelemetryを導入した話 / Mackerel APM リリースパーティ
cohalz
1
490
Cursor Meetup Tokyo
iamshunta
1
330
Babylon.jsでゲームを作ってみよう
limes2018
0
100
技術書典18結果報告
mutsumix
2
180
FastMCPでSQLをチェックしてくれるMCPサーバーを自作してCursorから動かしてみた
nayuts
1
210
AIに実況させる / AI Streamer
motemen
3
1.4k
会社員しながら本を書いてきた知見の共有
sat
PRO
3
690
[zh-TW] DevOpsDays Taipei 2025 -- Creating Awesome Change in SmartNews!(machine translation)
martin_lover
1
650
Featured
See All Featured
Designing for humans not robots
tammielis
253
25k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.6k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
19
1.3k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
14
1.5k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
460
Become a Pro
speakerdeck
PRO
28
5.4k
VelocityConf: Rendering Performance Case Studies
addyosmani
329
24k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
15
890
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3k
Transcript
AI を活用したソフトウェアテスト技術 ISTQB Foundation Level シラバス - AI Testing (CT-AI)
1
目次 1. テストのためのAI 技術 2. 報告された欠陥の分析にAI を活用 3. テストケース生成へのAI 活用
4. リグレッションテストスイートの最適化 5. AI による欠陥予測 6. ユーザーインターフェースのテストにAI を活用 2
想定読者 ソフトウェアテストエンジニア ▶ テスト自動化の経験を持つエンジニア ▶ AI テスト導入を検討している実務者 ▶ 開発チームリーダー・マネージャー ▶
テストプロセスの改善を推進する立場の方 ▶ AI 技術の導入を検討している方 ▶ AI/ML エンジニア ▶ テスト分野でのAI 活用に興味のある方 ▶ テスト自動化基盤の開発者 ▶ 3
1. テストのためのAI 技術 ファジー論理と確率的手法 分類・学習・予測 ベイズ法によるシステム故障の分析・予測 ▶ コンポーネントや機能の故障確率の定量的推定 ▶ 人間-
システム間の相互作用における不確実性のモデル化 ▶ プロジェクトコストの予測モデル構築 ▶ 欠陥の自動分類と優先順位付け ▶ ML による欠陥パターンの学習 ▶ 4
1. テストのためのAI 技術 計算機による探索と最適化 現状のAI 実装における制約 大規模テスト空間の効率的探索 ▶ カバレッジ基準を満たす最小テストセット導出 ▶
テストスイートの自動最適化 ▶ テストオラクル問題 ▶ ステークホルダーとの複雑なコミュニケーション ▶ UX の質的評価 ▶ 批判的思考の限界 ▶ 潜在ニーズの理解 ▶ 5
2. 報告された欠陥の分析にAI を活用 自然言語処理による欠陥分類 クリティカル性評価 欠陥報告書からの重要トピック抽出 ▶ クラスタリングアルゴリズムの適用 ▶ k
近傍法 ▶ サポートベクターマシン ▶ 類似・重複欠陥の特定 ▶ 過去の重大欠陥パターンの学習 ▶ システム障害リスクの予測 ▶ リソース配分の最適化 ▶ 6
2. 報告された欠陥の分析にAI を活用 修正担当者の最適割り当て 大規模プロジェクトでの効果 欠陥修正履歴の分析 ▶ 開発者スキルとのマッチング ▶ 修正効率の向上
▶ 自動欠陥報告システムとの連携 ▶ スケーラブルな欠陥管理 ▶ 分析工数の削減 ▶ 7
3. テストケース生成へのAI 活用 多角的なテスト生成アプローチ テストオラクル問題への対応 ソースコード解析ベース ▶ UI マップベース ▶
テストモデルベース ▶ システム動作監視ベース ▶ バックツーバックテスト ▶ 基本的な異常検知 ▶ モデルベースの期待値定義 ▶ 8
3. テストケース生成へのAI 活用 AI 手法の優位性 欠陥検出能力の向上 ▶ 同等カバレッジでより多くの欠陥を検出 ▶ デバッグ容易性の大幅改善
▶ 従来: 約15,000 ステップ - AI 活用: 約100 ステップ - 効率化と品質向上の両立 ▶ テストケース生成の自動化 ▶ 探索空間の効率的カバー ▶ メンテナンス性の向上 ▶ 9
4. リグレッションテストスイートの最適化 AI による包括的最適化 データ駆動型戦略 テスト実行履歴の分析 ▶ 欠陥検出パターンの学習 ▶ コード変更影響分析
▶ テストケース重要度評価 ▶ 高効率テストケースの優先順位付け ▶ 重複テストケースの統合 ▶ 低影響テストケースの除外 ▶ 新規テストケース追加判断 ▶ 10
4. リグレッションテストスイートの最適化 最適化効果の定量的評価 テストスイート規模の削減 ▶ サイズ: 50% 削減 ▶ 欠陥検出力:
維持 ▶ CI/CD 環境での効果 ▶ 実行時間: 40% 短縮 ▶ 品質: 同等レベル維持 ▶ 11
5. AI による欠陥予測 多面的予測要因 コード品質メトリクス ▶ 行数 ▶ 複雑度 ▶
結合度 ▶ プロセス特性 ▶ 変更頻度 ▶ レビュー状況 ▶ 組織要因 ▶ チーム構成 ▶ 開発者経験 ▶ 12
5. AI による欠陥予測 予測モデルの特徴 予測精度の決定要因 ▶ 人材・組織指標が最重要 ▶ 類似プロジェクト経験の活用 ▶
要因間の相互作用考慮 ▶ 実用上の留意点 ▶ データ品質の重要性 ▶ モデル更新の必要性 ▶ 予測結果の解釈方法 ▶ 13
6. ユーザーインターフェースのテストにAI を活用 GUI 要素の堅牢な識別 複数識別基準の動的評価 ▶ XPath ▶ ID
▶ 座標 ▶ ビジュアル特徴 ▶ 過去の安定性に基づく選択 ▶ 変更耐性の強化 ▶ 14
6. ユーザーインターフェースのテストにAI を活用 画像認識技術の活用 人間視点でのUI 操作 ▶ 非侵入型テスト実行 ▶ クロスプラットフォーム検証
▶ 15
6. ユーザーインターフェースのテストにAI を活用 GUI 品質の自動評価 受容性判断 ▶ ヒューリスティック評価 ▶ 教師あり学習による判定
▶ 変更検出 ▶ レイアウト崩れ ▶ スタイル変更 ▶ 互換性問題 ▶ ビジュアルリグレッション ▶ 16
まとめ 17
AI テスト技術の現状 ▶ 多様な適用領域の確立 - 具体的な効果の実証 - 実用レベルのツール登場 - 導入における注意点
▶ テストオラクル問題への対処 - データ品質の確保 - 人間の役割の再定義 - 今後の展望 ▶ AI 技術の進化による適用範囲拡大 - ハイブリッドアプローチの重要性 - テストプロセスの継続的改善 - 18
Appendix: 用語辞書 ベイジアン手法: 確率論的アプローチによる予測・推論手法 ▶ NLP (Natural Language Processing): 自然言語処理
▶ GUI (Graphical User Interface): グラフィカルユーザーインターフェース ▶ クラスタリングアルゴリズム: データの自動分類手法 ▶ k 近傍法: パターン認識のための機械学習アルゴリズム ▶ サポートベクターマシン: 教師あり学習による分類アルゴリズム ▶ テストオラクル: テスト結果の正否判定基準 ▶ リグレッションテスト: 回帰テスト、変更による影響確認テスト ▶ 19