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
2k
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.2k
mrskで広がるインフラの選択肢
willnet
1
1k
アプリケーションを長期にわたって無理なく運用するためのたったひとつの方法
willnet
2
2.1k
HotwireからDHHが考えるこれからのRailsとJSの付き合い方を知る
willnet
14
13k
Rails6.1で新しく入る機能について
willnet
12
15k
Concerns about Concerns
willnet
11
34k
Clean Test Code Revised
willnet
34
18k
Other Decks in Technology
See All in Technology
ExaDB-XSで利用されているExadata Exascaleについて
oracle4engineer
PRO
3
180
エンジニアが加速させるプロダクトディスカバリー 〜最速で価値ある機能を見つける方法〜 / product discovery accelerated by engineers
rince
4
550
日経のデータベース事業とElasticsearch
hinatades
PRO
0
210
MIMEと文字コードの闇
hirachan
2
1.4k
分解して理解する Aspire
nenonaninu
2
880
わたしのOSS活動
kazupon
2
340
いまからでも遅くない!コンテナでWebアプリを動かしてみよう!コンテナハンズオン編
nomu
0
130
コンピュータビジョンの社会実装について考えていたらゲームを作っていた話
takmin
1
590
短縮URLをお手軽に導入しよう
nakasho
0
140
コンテナサプライチェーンセキュリティ
kyohmizu
1
130
AIエージェント入門
minorun365
PRO
30
16k
Perlの生きのこり - エンジニアがこの先生きのこるためのカンファレンス2025
kfly8
2
260
Featured
See All Featured
Build your cross-platform service in a week with App Engine
jlugia
229
18k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.5k
Statistics for Hackers
jakevdp
797
220k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Building Your Own Lightsaber
phodgson
104
6.2k
Docker and Python
trallard
44
3.3k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
10
1.3k
Making Projects Easy
brettharned
116
6k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.3k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Rebuilding a faster, lazier Slack
samanthasiow
80
8.9k
Being A Developer After 40
akosma
89
590k
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ςετΛݮΒͯ͠ɺ ΞϓϦέʔγϣϯίʔυʹ ͖߹͏࣌ؒΛ૿͍ͨ͠
Զͨͪͷઓ͍͜Ε ͔Βͩʂ