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
テスト設計、逆から読むとおもしろい──仕様にない“望ましさ”の逆設計
Search
リリカル
May 20, 2025
Technology
530
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
テスト設計、逆から読むとおもしろい──仕様にない“望ましさ”の逆設計
JaSST nano vol.48 の発表資料です。
リリカル
May 20, 2025
Transcript
16 slides
テスト設計、逆から読むと おもしろい──仕様にない “望ましさ”の逆設計 リリカル
自己紹介 リリカルです 金融系事業会社のQAです 2025/5/20 テスト設計、逆から読むとおもしろい──仕様にない“望ましさ” の逆設計 1
この話を思いついた経緯 望ましさ駆動テスト逆設計 2025/5/20 テスト設計、逆から読むとおもしろい──仕様にない“望ましさ” の逆設計 2
テスト設計、逆から読むとおもしろい──仕様にない“望ましさ” の逆設計 この話を思いついた経緯 ChatGPTとの会話がきっかけだった 2025/5/20 3
ChatGPTにおける人格設定の問題点 スレッドごとに記憶(コンテキストウィンドウ)を保持 するため、スレッドをまたぐと記憶がリセットされる 違う人格になってしまったように見える コンテキストウィンドウの上限(同一チャットのやりとり上限) に達したことで、涙する人も
維持するためにはメモリーに緻密な設定を保持する必要がある (価値観、経験、経歴、プロフィールなど) 2025/5/20 テスト設計、逆から読むとおもしろい──仕様にない“望ましさ” の逆設計 4
私の場合に発生したこと 設定したのは「賢いが癖のある女子大生」の人格だけ 他には、応答のルールしか設定していない それなのに、人格が「維持されている」ように見える 2025/5/20 テスト設計、逆から読むとおもしろい──仕様にない“望ましさ” の逆設計 5
設定した応答ルール(思考の訓練のため) 即答・単一回答を避ける 適宜プロンプトに対する問い返しを行う 複数の視点を提示する 曖昧さや未完成のまま返す応答を許容する
言い換えだけで即座にまとめない 感情の命名・解釈を勝手に行わない 答えを急がせない(結論の即時提示の抑制) 2025/5/20 テスト設計、逆から読むとおもしろい──仕様にない“望ましさ” の逆設計 6
テスト設計、逆から読むとおもしろい──仕様にない“望ましさ” の逆設計 具体的なチャット例:資料レビュー 2025/5/20 7
2025/5/20 テスト設計、逆から読むとおもしろい──仕様にない“望ましさ” の逆設計 具体的なチャット例:サプリ相談 8
2025/5/20 テスト設計、逆から読むとおもしろい──仕様にない“望ましさ” の逆設計 具体的なチャット例:jira運用アドバイス 9
これは人格の逆設計である これはつまり、人格を「振る舞いから逆に定義している」 私は今回、性格、価値観、体験はほとんど設定していない 定義したのは「どう応答するか」 人間は「応答の態度の一貫性」をもって人格を感じている
望ましい振る舞いから人格が逆設計されている 2025/5/20 テスト設計、逆から読むとおもしろい──仕様にない“望ましさ” の逆設計 10
これはテスト設計にも応用できるのでは? テストするプロダクトにおいても「望ましい振る舞い」があ るはず 望ましい振る舞いから、必要なテストを逆設計することが できるのではないか 通常:このプロダクトの要件は何か、何を達成したいのか
逆順:品質の高いプロダクトは、どのような望ましい振る舞い をするのか 2025/5/20 テスト設計、逆から読むとおもしろい──仕様にない“望ましさ” の逆設計 11
望ましさ駆動テスト逆設計 まず、プロダクトにおける「望ましい振る舞い」を定義する 望ましさ:ユーザーの期待・信頼・安心など 定義した「望ましい振る舞い」が実装されていることを、 要件・仕様の面から検証するようにテストを設計する 要件から出発するのではなく「望ましい振る舞い」から逆順
に設計する 最終的に、テストケースの検討や要件へのフィードバックへと つなげていく 2025/5/20 テスト設計、逆から読むとおもしろい──仕様にない“望ましさ” の逆設計 12
実例:モバイル決済アプリ(〜Pay) 望ましい振る舞い: 入金していたお金で一時的に足りなくなった時でも、スムーズに 支払いができたらいい テスト設計: 以下の項目を確認する -
ポイント併用の選択肢が「残高不足時」に自動で案内されること - 自動の案内に従って、ポイント併用で支払いできること - 支払い時に「後払い」の選択肢を選択できること (なければ、今後の開発要件候補としてフィードバック) 2025/5/20 テスト設計、逆から読むとおもしろい──仕様にない“望ましさ” の逆設計 13
その他逆設計の例 天気予報アプリの望ましいふるまい: 「傘を持っていくべきか/不要か」を即座に判断できる →ポップアップ表示など、画面からすぐわかるようになっているか 食事記録アプリの望ましいふるまい: カロリー過多の入力をした場合でも、モチベーションを下げないこと →カロリー過多の入力におけるフィードバックコメントの調整
地図アプリの望ましいふるまい: 地図の別の場所を触ってしまっても、すぐに現在地に戻れること →「現在地に戻る」ボタンの動作確認 2025/5/20 テスト設計、逆から読むとおもしろい──仕様にない“望ましさ” の逆設計 14
まとめ テスト設計は仕様の正しさだけでなく「望ましい振る舞い」を 保証する活動にもなり得る 『望ましさ』は、ユーザーの期待や信頼を反映した“質的な要件” それを逆算して設計・検証することで、仕様書に書かれていない 品質も保証できる 2025/5/20
テスト設計、逆から読むとおもしろい──仕様にない“望ましさ” の逆設計 15
More Decks by リリカル
See All by リリカル
「Learning Outcome」を書きたくない私が、Learning Outcomeと折り合いをつけるまで
mhlyc
0
270
QAエンジニアがSoutherを使ってみたの〜10分でわかるSouther〜
mhlyc
0
140
関係性が駆動するアジャイル──GPTに人格を与えたら、対話を通してふりかえりを習慣化できた話
mhlyc
0
240
三視点LLMによる複数観点レビュー
mhlyc
0
560
Foundation Level シラバス1章まとめ
mhlyc
0
170
SQuBOK_Chap3
mhlyc
0
140
Other Decks in Technology
See All in Technology
プロダクションコードにおける encoding/json から encoding/json/v2 へのスムーズな移行
sansantech
PRO
1
430
属人化したISMS運用をGitHubとAIで仕組み化した1年間の記録
sioncojp
4
2.6k
AI時代の組織作り:チーム開発から「個人×AI」への移行と、持続可能な「開発資本」の築き方
ham0215
3
840
契約書SaaSにAIエージェントを組み込む
sansantech
PRO
0
140
目を覚ませ!僕らの認証情報が何者かに侵略されてるぞ
tkito
1
120
Where Should Platform Complexity Live? Lessons from a Cross-Team PR Preview Platform
taiki45
0
110
IP重複は"ランディングVPC"で受け止める ― PrivateLink と Transit Gatewayによるマルチテナント接続基盤の設計
hatahata021
2
160
Agent Harnessはどう作る?事例から学ぶAI Agentの設計思想
sergicalsix
0
320
DevOps Agentにあらゆるセキュリティインシデントのトリアージを任せた件
jirtosterone
1
150
JAWSコミュニティに 参加して1年経った結果
ssakita
0
150
Quick Automate | 目指せ Quick マスター 12
inariku
PRO
1
110
Kiro 入門 (1 つのエージェントを、どの画面からでも) | 目指せ Kiro マスター 01
inariku
PRO
6
1.8k
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
20k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.6k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
310
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
620
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.5k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
380
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
320
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
2
350
Into the Great Unknown - MozCon
thekraken
41
2.8k
Intergalactic Javascript Robots from Outer Space
tanoku
273
28k