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
XP, Testing and ninja testing
Search
seki at druby.org
June 27, 2025
Programming
3
800
XP, Testing and ninja testing
Rubyセミナー大阪 2025で話したスライドのXPとテストのPartだよ!
忍者式テストはSQiP2023やSS2023を探してみるか、m_sekiに問い合わせてね
seki at druby.org
June 27, 2025
Tweet
Share
More Decks by seki at druby.org
See All by seki at druby.org
RWC2025 Ninja-testing with smart playlist
m_seki
3
270
XP, Testing and ninja testing ZOZ5
m_seki
3
1.3k
RWC 2024 DICOM & ISO/IEC 2022
m_seki
0
510
ERB, ancient and future
m_seki
3
940
ERB Hacks
m_seki
1
1.5k
わりこまれるはなし
m_seki
0
950
ぼくのかんがえたさいきょうのけいやくによるプログラミング
m_seki
2
1.4k
Learn Ractor
m_seki
1
2.8k
How many copies did you buy the first print?
m_seki
1
1.1k
Other Decks in Programming
See All in Programming
なぜ強調表示できず ** が表示されるのか — Perlで始まったMarkdownの歴史と日本語文書における課題
kwahiro
11
5.6k
flutter_kaigi_2025.pdf
kyoheig3
1
270
Chart.jsで長い項目を表示するときのハマりどころ
yumechi
0
100
Nitro v3
kazupon
2
280
モビリティSaaSにおけるデータ利活用の発展
nealle
0
120
Rails Girls Sapporo 2ndの裏側―準備の日々から見えた、私が得たもの / SAPPORO ENGINEER BASE #11
lemonade_37
2
130
「正規表現をつくる」をつくる / make "make regex"
makenowjust
1
350
AsyncSequenceとAsyncStreamのプロポーザルを全部読む!!
s_shimotori
1
280
AIを駆使して新しい技術を効率的に理解する方法
nogu66
1
610
Private APIの呼び出し方
kishikawakatsumi
3
860
The Missing Link in Angular's Signal Story: Resource API and httpResource
manfredsteyer
PRO
0
120
Stay Hacker 〜九州で生まれ、Perlに出会い、コミュニティで育つ〜
pyama86
1
800
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
28
2.3k
Why Our Code Smells
bkeepers
PRO
340
57k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Optimizing for Happiness
mojombo
379
70k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
It's Worth the Effort
3n
187
28k
Fireside Chat
paigeccino
41
3.7k
How STYLIGHT went responsive
nonsquared
100
5.9k
Balancing Empowerment & Direction
lara
5
740
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
Being A Developer After 40
akosma
91
590k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
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ͱςετ ~ ऀࣜςετͷ࣮ફ͔Β ~