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
Breaking the Flaky Test Cycle
Search
Shinichi Maeshima
September 09, 2023
Technology
2
2.1k
Breaking the Flaky Test Cycle
大阪Ruby会議03 (
https://rubykansai.github.io/osaka03/
) の発表スライドです。
Shinichi Maeshima
September 09, 2023
Tweet
Share
More Decks by Shinichi Maeshima
See All by Shinichi Maeshima
Sidekiq vs Solid Queue
willnet
14
11k
どうしてこうなった?から理解するActive Recordの関連の裏側
willnet
6
1.4k
Exceptional Rails
willnet
6
7.4k
mrskで広がるインフラの選択肢
willnet
1
1k
アプリケーションを長期にわたって無理なく運用するためのたったひとつの方法
willnet
2
2.1k
HotwireからDHHが考えるこれからのRailsとJSの付き合い方を知る
willnet
14
13k
Rails6.1で新しく入る機能について
willnet
12
16k
Concerns about Concerns
willnet
11
34k
Clean Test Code Revised
willnet
34
18k
Other Decks in Technology
See All in Technology
Datadog のトライアルを成功に導く技術 / Techniques for a successful Datadog trial
nulabinc
PRO
0
130
地に足の付いた現実的な技術選定から魔力のある体験を得る『AIレシート読み取り機能』のケーススタディ / From Grounded Tech Choices to Magical UX: A Case Study of AI Receipt Scanning
moznion
2
860
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
7
63k
Computer Use〜OpenAIとAnthropicの比較と将来の展望〜
pharma_x_tech
6
1k
試作とデモンストレーション / Prototyping and Demonstrations
ks91
PRO
0
110
Simplify! 10 ways to reduce complexity in software development
ufried
2
240
Azure & DevSecOps
kkamegawa
2
180
genspark_presentation.pdf
haruki_uiru
1
240
Why Platform Engineering? - マルチプロダクト・少人数 SRE の壁を越える挑戦 -
nulabinc
PRO
4
390
10分で学ぶ、RAGの仕組みと実践
supermarimobros
0
910
問 1:以下のコンパイラを証明せよ(予告編) #kernelvm / Kernel VM Study Kansai 11th
ytaka23
3
490
AndroidアプリエンジニアもMCPを触ろう
kgmyshin
2
650
Featured
See All Featured
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
120
52k
Documentation Writing (for coders)
carmenintech
71
4.8k
Code Reviewing Like a Champion
maltzj
523
40k
The Pragmatic Product Professional
lauravandoore
33
6.6k
Gamification - CAS2011
davidbonilla
81
5.3k
RailsConf 2023
tenderlove
30
1.1k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.5k
Statistics for Hackers
jakevdp
799
220k
Stop Working from a Prison Cell
hatefulcrawdad
268
20k
The Cult of Friendly URLs
andyhume
78
6.3k
Bash Introduction
62gerente
613
210k
Transcript
!XJMMOFU #SFBLJOHUIF'MBLZ 5FTU$ZDMF
Shinichi Maeshima @netwillnet @willnet https://blog.willnet.in Willnet Inc.
ٕज़ސۀΛ͍ͯ͠·͢
͓ࣄ4/4తͳͷΛ։ൃ ͍ͯ͠·͢
!XJMMOFU #SFBLJOHUIF'MBLZ 5FTU$ZDMF ࠓ'MBLZͳςετͷ Ͱ͢
'MBLZͳςετͱʁ w ࣮ߦ݁Ռ͕ෆ҆ఆͳςετ w ݪҼ༷ʑ w &&ςετͰΫϦοΫ࠲ඪΛؒҧ͑ͨ w ςετ࣌ͷมߋΛ͢ͷΛΕ͍ͯͨ w
࣮ߦ͢Δ࣌ؒʹΑࣦͬͯഊ͢Δ w PSEFSCZ͕͍͍ͭͯͳ͍ΫΤϦൃߦ
'MBLZͳςετ͕͋ ͬͨΒͲ͏͢Δʁ
None
௨Δ·Ͱ࠶࣮ߦ
🙅
ؾ࣋ͪΘ͔Δ͚Ͳʜ w $*͕௨Δ·Ͱ͍ͬͯΔؒͷ࡞ۀ͕Δ😩 w $*࣮ߦ࣌ؒɺΤϯδχΞͷɺςετͷࣦഊͦΕͧΕʹ ൺྫͯ͠Δ w ผͷ͜ͱΛ͍ͯͯ͠εΠονϯάίετ͕͔͔Δͧ w $*αʔϏεͷ՝ֹۚ૿͑Δ💰
w ςετ͕ΦΦΧϛগԽ͢Δ🐺 w ຊ࣮͕ѱͯ͘࠶࣮ߦͰ௨ͬͯ͠·ͬͨΒεϧʔ͞ Εͯ͠·͏
؇ࡦ
IUUQTIBOBDIJOIBUFCMPKQFOUSZ
ࣦഊͨ͠ςετͷ࠶࣮ߦΛ ϫʔΫϑϩʔʹΈࠐΉ
͋͘·Ͱ؇ࡦ
ࠜຊղܾ͍ͨ͠ʂ
IUUQTCMPHXJMMOFUJOFOUSZ
ཁ͢Δͱ w ςετࣦഊ࣌ͷৼΔ͍ΛௐΔ ϩάɺεΫγϣɺσό οΨʹΑΔϒϨʔΫϙΠϯτͳͲ w ςετ͕Ͳ͏ಈ͍͍ͯΔͷ͔͓ͬͯ͘ඞཁ͕͋Δͧ w 3BJMTΛΖ͏
w ςετͷઃఆΛΖ͏ w DBQZCBSB TFMFOJVN ͕Ͳ͏ಈ͍͍ͯΔͷ͔Ζ͏
ݱঢ়ɺGMBLZ ςετͷݪҼΛ ௐࠪ͢Δʹ෯ ͍͕ࣝඞཁ
݁Ռͱͯ͠ γχΞΤϯδχΞ ʹࣄ͕ूத͢Δ
γχΞΤϯδχΞଞͷ ࣄ͋ΔͷͰͳ͔ͳ͔ GMBLZςετݮΒͳ͍
ͭΒ͍
ΈͰঢ়گΛม͑ ͍ͨ
ࣗͷ࡞ͬͨΈɺଞ ͷਓ͕࡞ͬͨΈͰศ རͳͷΛհ͠·͢
Έ
GMBLZςετ Λ͙Έ
GMBLZͷݪҼͷ Ұͭ ΫϦοΫϛε
$BQZCBSB͕ཁૉΛΫϦοΫ͢Δ·Ͱ w ΫϦοΫ͍ͨ͠ཁૉͷ࠲ඪΛௐΔ w ͜͜ʹগ͠λΠϜϥά͕͋Δ w ௐͨ࠲ඪΛΫϦοΫ͢Δ
%0.ཁૉ͕ಈ͘ͱ ΫϦοΫʹࣦഊ͢ Δ͜ͱ͕͋Δ
$BQZCBSBEJTBCMF@BOJNBUJPOUSVF
IUUQTHJUIVCDPNUFBNDBQZCBSBDBQZCBSBCMPCBCGFBCCCFGDDDDGDMJCDBQZCBSBTFSWFSBOJNBUJPO@EJTBCMFSSC--
DTTͱK2VFSZ ىҼͷΞχϝʔ γϣϯΛΦϑʹ ͢Δ
K2VFSZҎ֎ͷ KTʹΑΔΞχϝʔ γϣϯະରԠ😇
5*14։ൃڥͰDBQZCBSBͷΞχ ϝʔγϣϯΦϑ͕ޮ͍͍ͯΔ͔ࢼ͢ w (FN fi MFͷDBQZCBSBͷHSPVQΛมߋͯ͠EFWFMPQNFOUͰ ༗ޮʹ͢Δ w DPO fi
HBQQMJDBUJPOSCʹҎԼΛه
ଞʹ%0.ཁ ૉΛಈ͔͕͢ ͋Δ
🏞
ը૾ͷ Ԇ ಡΈࠐΈλ ΠϛϯάͱΫϦοΫͷλ Πϛϯά͕Ұக͢Δͱ☠
XJMMOFUDBQZCBSBXBJU@JNBHF
None
HFNΛಋೖ͢Δͩ ͚Ͱɺը૾ͷಡΈࠐ ΈىҼͷΫϦοΫϛ ε͕ແ͘ͳΔ
Έ
ָʹௐࠪͰ͖ΔΈ
$*ͷΈ͔ͭكʹ͔͠ ى͖ͳ͍GMBLZςε τௐࠪͰେࣄͳͷ
ϩά
Ͱ֘ͷςε τͷϩά͕ຒ Εͯ͠·͏
XPSLBSPVOE
.#͑ΔΑ͏ͳϩά ͔ΒHSFQ͢Δͷ͍ͨΜ
XJMMOFUDJ@MPHHFS
ࣦഊͨ͠ςε τͷϩά͚ͩ ग़ྗͰ͖Δ
࣍
&&ςετࣦഊ࣌ͷε ΫϦʔϯγϣοτ ௐࠪ࣌ʹ༗ޮ
$ZQSFTT 1MBZXSJHIUΛ͏ͱಈ ըͰϒϥβͷಈ࡞Λ ݟΔ͜ͱ͕Ͱ͖ͯศར
͍͍ͨͪͨ
:VTVLF*XBLJ DBQZCBSBQMBZXSJHIU ESJWFS
υϥΠόΛม͑ͣ ʹಈըΛࡱΓ͍ͨ
ZZBHJUFTUSFDPSEFS
TFMFOJVNͰಈը͕ࡱΕ Δ DVQSJUFͷํ͓· ͍ͪͩ͘͞
ͨͩ͠ɺςετ͕ޭ͠ ͯৗʹεΫγϣ͔Βಈ ըΛੜ͢Δඞཁ͕͋Δ
ςετ͕ޭͯ͠d ׂͷΦʔόʔϔου͕͋ Δ UFTUSFDPSEFS
ϓϩδΣΫτʹΑͬͯΦ ʔόϔουΛݮΒ͕͢ ඞཁ͔ ྫಈըࡱӨΛ GMBLZͳςετ͚ͩΛର ʹ͢Δ
·ͱΊ
ͨ͜͠ͱ w fl BLZςετͰফ͢ΔͷΛΈͰղܾ͍ͨ͠ w fl BLZςετΛ͙Έ w &&ςετͰΫϦοΫ࣌ʹը૾ىҼͰཁૉ͕ಈ͔ͳ͍Α͏ʹ ͭΈΛಋೖ
DBQZCBSBXBJU@JNBHF w fl BLZςετΛָʹௐࠪ͢ΔΈ w ςετࣦഊ࣌ͷΈϩάΛग़ྗ͢ΔΈ DJ@MPHHFS w ςετࣦഊ࣌ʹಈըͰϒϥβͷڍಈΛ֬ೝͰ͖ΔΈ DBQZCBSBQMBZXSJHIUESJWFS UFTUSFDPSEFS
·ͩ·ͩվળͰ͖Δ ༨͋Δ
ΈΜͳͰΈΛ࡞ ͍͖ͬͯ·͠ΐ͏ʂ
GMBLZςετΛݮΒͯ͠ɺ ΞϓϦέʔγϣϯίʔυʹ ͖߹͏࣌ؒΛ૿͍ͨ͠
Զͨͪͷઓ͍͜Ε ͔Βͩʂ