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
XP, Testing and ninja testing
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
seki at druby.org
June 27, 2025
Programming
1.5k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
XP, Testing and ninja testing
Rubyセミナー大阪 2025で話したスライドのXPとテストのPartだよ!
忍者式テストはSQiP2023やSS2023を探してみるか、m_sekiに問い合わせてね
seki at druby.org
June 27, 2025
More Decks by seki at druby.org
See All by seki at druby.org
What We Talk About When We Talk About XP
m_seki
2
860
Programming with a DJ Controller — not vibe coding
m_seki
3
1.4k
Agile Leadership Summit Keynote 2026
m_seki
1
1.8k
RWC2025 Ninja-testing with smart playlist
m_seki
4
1.9k
XP, Testing and ninja testing ZOZ5
m_seki
3
3.1k
RWC 2024 DICOM & ISO/IEC 2022
m_seki
0
620
ERB, ancient and future
m_seki
3
1.1k
ERB Hacks
m_seki
1
1.8k
わりこまれるはなし
m_seki
0
1.3k
Other Decks in Programming
See All in Programming
AIが生成したコードは読むべきか?抽象化設計とコードの品質保証 / abstraction-design-and-quality
minodriven
14
8.2k
AmebaブログはKMPから卒業します
kmars0605
0
310
Getting Started with Vibe Coding
miccheng
0
170
そのデザイントークン、Flutterでも同じ見た目になりますか?
nakamizu
0
270
조합이폭발하는디자인시스템이걸눈으로도테스트하라고요
giljongyu
0
690
Long Living Tokens, Die, Die, Die! (or: The One Ring is Banned in Modern)
sylph01
0
400
Railsのためのパスキー実践入門 〜マルチテナントSaaSでの意思決定〜
utakaha
3
2.5k
クラウドエージェントは、 何がそんなに便利なのか / what makes cloud agents so useful
rkaga
5
680
FactoryBotをやめればRSpecは速くなるのか?
yuta_onishi_97
0
1.3k
ChromeでローカルLLM
ryu1013
0
190
GraphQL の onError と Nullability のこれから
quramy
0
200
ActionController meets Protocol Buffers
sorah
1
770
Featured
See All Featured
KATA
mclloyd
PRO
35
16k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.4k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
2
2.1k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
750
Claude Code のすすめ
schroneko
67
230k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
1
600
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
660
[RailsConf 2023] Rails as a piece of cake
palkan
59
7.1k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.6k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Thoughts on Productivity
jonyablonski
76
5.4k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
1
650
Transcript
OJOKBUFTUJOHDPN 91ͱςετ ~ ऀࣜςετͷ࣮ફ͔Β ~
91ͱςετ ~ ऀࣜςετͷ࣮ફ͔Β ~
91Λհͨ͠ɻ࣍ςετ 91ͱςετ ~ ऀࣜςετͷ࣮ફ͔Β ~
͔͜͜Βຊฤɻ 91ͱςετ ~ ऀࣜςετͷ࣮ફ͔Β ~
ࣗݾհ ͋ͷʢҩྍػثιϑτΣΞ։ൃͷF9USFNFͳʣνʔϜʹॴଐ͢Δ։ൃऀ ؔকढ़ϓϩάϥϚ ਂ୩ඒςελʔ ͜ͷ9ઢ$5ը૾ࢲͨͪͷ։ൃͨ͠ஔͰࡱӨͨ͠ࢲͨͪͷதʢਓؒυοΫͷ࠶ݕࠪͰࡱͬͯΒͬͨΑʂʣ
91ͱςετ ~ ऀࣜςετͷ࣮ફ͔Β ~
F9USFNF1SPHSBNNJOH 91 ΞδϟΠϧϓϥΫςΟεϚοϓ"HJMF4UVEJPIUUQTXXXBHJMFTUVEJPKQBHJMFQSBDUJDFNBQ
F9USFNF1SPHSBNNJOH ✦ ϙετɾιϑτΣΞֶख๏ ✦ ιϑτΣΞ։ൃϏδωεͷن ✦ ϕετϓϥΫςΟεΛۃʹ࣮ࢪ ✦ ։ൃαΠΫϧΛૉૣ͘ճ͢
91 ΞδϟΠϧϓϥΫςΟεϚοϓ"HJMF4UVEJPIUUQTXXXBHJMFTUVEJPKQBHJMFQSBDUJDFNBQ
F9USFNF1SPHSBNNJOH ✦ ϙετɾιϑτΣΞֶख๏ ✦ ιϑτΣΞ։ൃϏδωεͷن ✦ ϕετϓϥΫςΟεΛۃʹ࣮ࢪ ✦ ։ൃαΠΫϧΛૉૣ͘ճ͢
91 ੈلͷऴΘΓͷιϑτΣΞֶΛ্ॻ͖͠ʹ͖ͨʂʢͷ࡞Γํͩͬͨͷͷ͕ঃʑʹ࡞ΒͤํʹͳͬͨɻͦΕΛ࠶ͼ࡞Γํʹͨ͠ײ͢͡Δʣ
F9USFNF1SPHSBNNJOH ✦ ϙετɾιϑτΣΞֶख๏ ✦ ιϑτΣΞ։ൃϏδωεͷن ✦ ϕετϓϥΫςΟεΛۃʹ࣮ࢪ ✦ ։ൃαΠΫϧΛૉૣ͘ճ͢
91 ϏδωεͳͷͰɺͦͦ͜͜ʹෳࡶͰɺਓࢿۚʹ੍͕͋ΓɺϦϦʔε͢Δ͕ܾ·͍ͬͯΔɻͦ͏͍͏ϓϩδΣΫτʹ͍͍ͯΔɻʢখ͍͞ͱ͖ʹཱͨͳ͍ʣ
F9USFNF1SPHSBNNJOH ✦ ϙετɾιϑτΣΞֶख๏ ✦ ιϑτΣΞ։ൃϏδωεͷن ✦ ϕετϓϥΫςΟεΛۃʹ࣮ࢪ ✦ ։ൃαΠΫϧΛૉૣ͘ճ͢
91 ͍͍͘͢͝ϓϥΫςΟεΛۃʹΔʂۃྲྀϓϩάϥϛϯάͷ༝དྷɻʢ㲈ͪΐͬͱ͍͍ͭΛ·ΜΜͳͬͨ͘Γ͠ͳ͍ʣ
F9USFNF1SPHSBNNJOH ✦ ϙετɾιϑτΣΞֶख๏ ✦ ιϑτΣΞ։ൃϏδωεͷن ✦ ϕετϓϥΫςΟεΛۃʹ࣮ࢪ ✦ ։ൃαΠΫϧΛૉૣ͘ճ͢
91 ૉૣ͘ɺʢͱ͔ૣ͘ͱ͔εϐʔυͱ͔ʣͪΐͬͱΘ͔Γʹ͍͘
F9USFNF1SPHSBNNJOH ✦ ૉૣ͘ٸ͍ͰΔ͜ͱͰͳ͍ ✦ λΠϜϘοΫε ✤ ظؒͱඪʢͷ֬ೝํ๏ʣ ✦ ֬ೝ͢Δͱ͍͏͜ͱɺͦͷํ๏ɺ࣌ ظΛλΠϜϘοΫεͷ࢝Ίʹߟ͑Δ
͜ͱ͕ૉૣ͞Λৢ͢ ✦ ਓϛε͢Δɺ͕ࠜఈʹ͋Δ ✤ ૣ͘ϛε͕όϨΔΑ͏ʹ ϛε͠ͳ͍Α͏ʹͯ͠ϛε͢Δ 91 ͍ΖΜͳλΠϜϘοΫε͕͋ͬͯɺͦΕΛར༻ͯ͠Λ໌ΔΈʹग़͢ɻʢۃʹͨ͠Β࣌ؒཧͷςΫχοΫͰͳ͘ͳͬͨʣ
F9USFNF1SPHSBNNJOH ✦ ෮։ൃͷ͍͍ͭ͘͢͝ʹͨ͠ʂ ✤ ϢʔβʔετʔϦʔ ͣͬͱΔʗຖݟ͢ʗೖΕࢠ͕ͳ͍ ✤ ड͚ೖΕςετ
શһΔʗͣͬͱΔʗຖݟ͢ʗ৽ ͨͳΛΈ͚ͭΔςετʹ͢Δ ✤ ςετۦಈ։ൃ ͋ΒΏΔΞΫςΟϏςΟʹൣғΛ͛Δ ✦ ͦ͏͍͏ͭΓͰຊฤΛฉ͜͏ ऀࣜςετͰ
͜Εͨͩͷ91Ͱ͋Δ F9USFNF1SPHSBNNJOH ✦ 91ࣗମʹۃ͞Λ͞Βʹ্͛Δ͜ͱΛଅ͢Έ͕ࡏ͞Ε͍ͯΔʢͱࢥ͏ ✤ 91ͷຊʹॻ͍ͯ͋Δఔͷۃ͞ɺग़ൃͰ͋ͬͯͦΕ͕ਖ਼͍͠91ͱ͍͏Θ͚ ͡Όͳ͍ ✤ ͦͷۃ͞ʹཹ·Δͷຊʹۃྲྀ͔ʁ ͷ91ࡇΓͷ࣌ͰͦΕʹؾ͍͍ͮͯ·ͤΜͰͨ͠
91Λհͨ͠ɻ࣍ςετ 91ͱςετ ~ ऀࣜςετͷ࣮ફ͔Β ~
ాਓ͞Μᐌ͘
ాਓ͞Μᐌ͘ ͍ͭҾ༻ͯ͘͠Εͯ͋Γ͕ͱ͏͍͟͝·͢
UXBEB͞Μᐌ͘
ղઆ͠·͢ ද໘తʹฉ͘ͱؾ͕͍͍͕ ✦ ςετΛͯ͠ϞϊΑ͘ͳΒͳ͍ ✤ Α͘͢ΔͷϓϩάϥϛϯάͩͧʂʢͦΕͦ͏ʣ ͬͺϓϩάϥϛϯάॏཁͩͳʔ
ςετͰΛݟ͚ͭͯͳ͓͢ ✦ ؾʹೖΒͳ͍͜ͱΛ୳ͯ͠ɺͬͱྑ͘͢ΔͨΊʹςετ͢Δ ✤ ͏·͍ͬͨ͘ςετɺͱ͍͏ͷ৽͍͠Λݟ͚ͭΒΕͨςετ ✤ ࣦഊͨ͠ςετɺͱ͍͏ͷͳʹ͕ݟ͔ͭΒͳ͔ͬͨςετ ͜ͷλʔϯຊฤͷཧղΛॿ͚ΔલઆͰ͢Α ΤϥʔΛൃݟ͢ΔతͰϓϩάϥϜΛ࣮ߦ͢Δաఔ͕
ςετͰ͋Δɽ ιϑτΣΞͷ৴པੑQ
ࣗಈԽ͍ͨ͠ͷʁ ͳ͓ऀࣜςετͷςετखಈςετͰ͢ ✦ ճάϦʔϯʹͳͬͯCJUΑ͘ͳΒͳ͍͚Ͳ ✤ ͔ͩΒࣗಈԽͰ͢ΑʂແବͳΜͰʂʢΘ͔Δʣ ✤ Ͱ͔ͯ͠͠࡞Γյ͕͋͠Δ͔͠Εͳ͍͔Β ͦΜͳʹ৺ੑͷਓ͕ࣗಈԽͰ͖ͨͱ͜Ζʹ͔͕͠ͳ͍ͬͯࢥ͏͕ͣͳ͍Αͳ
✤ ςετͷࣗಈԽ࣮ߦΑΓɺࣗಈԽ͢ΔաఔͰͷ࣮ͷચ࿅ʢϓϩάϥϛϯάʣ ͷ΄͏ʹՁ͕͋Δ ʮ࣭Λ୲อ͢Δʯͱ͍͏ϑϨʔζ͕ӕ͗͘͢͞ΔͷͰ᪳ͳ͘͏ਓͱڑஔ͘Α͏ʹͯ͠Δɻอͱ͍͍͍͑ͷʹ ͜ Ε Ϩ τ ϩ χ Ϝ ʁ
ऀࣜςετͷςετ͜͏͍͏ςετ ͍ΘΏΔςετٕ๏ͷతͱ͍ͩͿ͕ͪ͏ ✦ Βͳ͍Λ୳ͨ͢Ίͷςετ ✤ ͳ͓ͨ͢ΊʹΔ ✤ ޙΓͤ͞ΔͨΊʹΔ ✦ άϦʔϯͷΛ૿͍ͨ͠Θ͚͡Όͳ͍
✦ खΛݮΒͨ͢ΊͷςετͰͳ͍ ✦ Կݴ͏͚ͲखಈͰͬͯΔΑʂ ͜ͷλʔϯऀࣜςετͷཧղΛॿ͚ΔલઆͰ͢Α
͔͜͜Βຊฤɻ 91ͱςετ ~ ऀࣜςετͷ࣮ફ͔Β ~
ݴ͍ͨ͜͠ͱ͕͋Δ Γ
ظ͕ؒ͋Δͱߟ͍͑͢ ✦ ͋ͱिؒʢɾ࣌ؒʣͳΒ ✤ ͳʹΛ͢Δͷ͕͓ಘ͔ʁ ✤ ͲͷػೳΛ࡞Δ͔ ✤ ͲͷΛͳ͓͔͢ ✤
ͲΜͳςετΛ͢Δ͔ ✤ ͲΜͳจॻΛ͔͢ ✦ ظ͕ؒ͋Δ͜ͱͰબͰ͖ΔɾܾΊ ΒΕΔ ✦ ʮͷ͘͢͝Α͍͜ͱʯ͚ͩʹͳΔ λΠϜϘοΫεԾઆ ظ͕ؒఆ·Βͳ͍ͱʮΑ͍͜ͱʯΛશͯΛΓͨ͘ͳΔɻϏδωεͳͷͰ੍͕࣌ؒ͋ΔΜͩͧʂ
ͲΜͳจॻ͕ͬͨͷ͔ ݶΒΕͨظؒͰॻ͚ΔɾಡΊΔɾϝϯςφεͰ͖ΔͷͳΜͩʂʁ ✦ ͲΜͳͱ͖ʹಡΉʁ ✤ Εͨ͜Ζʹ͍߹Θ͕ͤ͋ͬͨΓɺվͨ͘͠ͳͬͨΓ͢Δͱ͖ ✦ ͳʹ͕΄͍͠ʁ ✤ ͍ํɻͦͷͱ͖ظ͍ͯͨ͠ͷಈ͖͕ॻ͍ͯ͋Δͱ͏Ε͍͠
͍·ͷಈ࡞͕ਖ਼͍͠ͷ͔յΕ͍ͯΔͷ͔ɺޙੈʹΘ͔Βͳ͍ ͦͷڍಈΛબΜͩҙਤʢ༷ͷૉΒ͠͞ɾٽ͘ٽ͘બΜͩʣͱ͔ ✦ ऀࣜςετͷνέοτͦͷͷ ✤ ͍ํɾ΄͍͠ͷ͕ςετهͰॻ͔Ε͍ͯΔ ✤ ͜ͷςετྫࣔʹΑΔ༷ʹۙ͘ɺΛ୳͢ͱ͖ͷग़ൃͱͳΔ ✤ ʢνέοτ໋ྩॻͱ͔ථͱ͔͡Όͳ͍Μͩͧʂʣ ؒຖબ͖ͯͨ݁͠Ռɺͬͨจॻड͚ೖΕςετͩͬͨ
ࠓ91ͱςετͱऀࣜςετͷ͓Λ͠·ͨ͠🥷 91ͱςετ ~ ऀࣜςετͷ࣮ફ͔Β ~