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
Summary of Diagnose unreliable code with test ...
Search
shunsuke sato
June 25, 2021
Programming
1.1k
1
Share
Summary of Diagnose unreliable code with test repetitions
shunsuke sato
June 25, 2021
More Decks by shunsuke sato
See All by shunsuke sato
要約 "Add Live Text interaction to your app"
ushisantoasobu
1
1.3k
ANDPAD iOS開発の生態系と課題 - 最近取り組み始めた「マルチモジュール化」について
ushisantoasobu
1
830
実践!「みてね」における自動生成活用例
ushisantoasobu
5
6.6k
5 Tips when test fails randomly
ushisantoasobu
2
3.7k
Better Way for Test Data Generation??
ushisantoasobu
1
2.9k
iOS/Androidのサブスクリプション実装における違いをざっと振り返る
ushisantoasobu
2
1.8k
24時間でMacアプリを作ってスベってきた話
ushisantoasobu
0
2.3k
Redirectable in App?
ushisantoasobu
2
1k
iOSのClean Architecture テンプレ自動生成を支える技術 / generating CA's templates
ushisantoasobu
0
320
Other Decks in Programming
See All in Programming
AIエージェントで業務改善してみた
taku271
0
530
アーキテクチャモダナイゼーションとは何か
nwiizo
19
5.3k
一度始めたらやめられない開発効率向上術 / Findy あなたのdotfilesを教えて!
k0kubun
4
3k
Don't Prompt Harder, Structure Better
kitasuke
0
770
2026_04_15_量子計算をパズルとして解く
hideakitakechi
0
110
10 Tips of AWS ~Gen AI on AWS~
licux
5
410
tRPCの概要と少しだけパフォーマンス
misoton665
2
210
AI時代のPhpStorm最新事情 #phpcon_odawara
yusuke
0
190
おれのAgentic Coding 2026/03
tsukasagr
1
150
Running Swift without an OS
kishikawakatsumi
0
840
GNU Makeの使い方 / How to use GNU Make
kaityo256
PRO
16
5.6k
アクセシビリティ試験の"その後"を仕組み化する
yuuumiravy
0
150
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
Mind Mapping
helmedeiros
PRO
1
160
Java REST API Framework Comparison - PWX 2021
mraible
34
9.3k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.3k
Optimizing for Happiness
mojombo
378
71k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
520
Making the Leap to Tech Lead
cromwellryan
135
9.8k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.4k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
Transcript
Summary of “Diagnose unreliable code with test repetitions” at WWDC
2021 !ू·Ε4XJGU͖ʂ4XJGUѪձεϐϯΦϑ88%$ηογϣϯཁձ
ࣗݾհ
໊લࠤ౻ढ़ี ৬ۀϞόΠϧΞϓϦΤϯδχΞʢJ04ΛϝΠϯʹ"OESPJEͪΐͬͱʣ ॴଐגࣜձࣾΞϯυύου ʮݐங%9ʯΛ͍ͬͯΔձࣾ ࠓͷJ04%$ͷϓϥνφεϙϯαʔ
5XJUUFS!VTIJTBOUPBTPCV झຯίʔώʔɺαοΧʔɾϑοταϧ
Diagnose unreliable code with test repetitions
ҰݴͰ·ͱΊΔͱ ʮෆ҆ఆͳςετʢ࣌ʑίέΔςετʣʯΛͨ͢Ίʹ ʮςετͷ܁Γฦ࣮͠ߦʯػೳ͕Ճ͞Εͨ
ηογϣϯͷߏ ʮςετͷ܁Γฦ࣮͠ߦʯػೳͷ֓ཁ ʮςετͷ܁Γฦ࣮͠ߦʯػೳΛ༻͍ͨσϞ 5JQTʢYDPEFCVJMEίϚϯυ·ΘΓʣ
ηογϣϯͷߏ ʮςετͷ܁Γฦ࣮͠ߦʯػೳͷ֓ཁ ʮςετͷ܁Γฦ࣮͠ߦʯػೳΛ༻͍ͨσϞ 5JQTʢYDPEFCVJMEίϚϯυ·ΘΓʣ
ʮςετͷ܁Γฦ࣮͠ߦʯػೳͷ֓ཁ
ෆ҆ఆͳςετ͕ੜ·ΕΔݪҼ
ෆ҆ఆͳςετ͕ੜ·ΕΔݪҼ ڝ߹ঢ়ଶڥґଘάϩʔόϧεςʔτ֎෦αʔϏεͱͷ࿈ܞ
ෆ҆ఆͳςετ͕ੜ·ΕΔݪҼ ڝ߹ঢ়ଶڥґଘάϩʔόϧεςʔτ֎෦αʔϏεͱͷ࿈ܞ ෆ҆ఆͳςετΛ͢ͷ͕͍͠ཧ༝
ෆ҆ఆͳςετ͕ੜ·ΕΔݪҼ ڝ߹ঢ়ଶڥґଘάϩʔόϧεςʔτ֎෦αʔϏεͱͷ࿈ܞ ෆ҆ఆͳςετΛ͢ͷ͕͍͠ཧ༝ ࠶ݱ͢ΔʢίέΔʣͷ͕͍͠
ෆ҆ఆͳςετ͕ੜ·ΕΔݪҼ ڝ߹ঢ়ଶڥґଘάϩʔόϧεςʔτ֎෦αʔϏεͱͷ࿈ܞ ෆ҆ఆͳςετΛ͢ͷ͕͍͠ཧ༝ ࠶ݱ͢ΔʢίέΔʣͷ͕͍͠ ͦͷղܾํ๏ͷखஈͷ͕̍ͭʮςετΛ܁Γฦ͢ʯ͜ͱ
ෆ҆ఆͳςετ͕ੜ·ΕΔݪҼ ڝ߹ঢ়ଶڥґଘάϩʔόϧεςʔτ֎෦αʔϏεͱͷ࿈ܞ ෆ҆ఆͳςετΛ͢ͷ͕͍͠ཧ༝ ࠶ݱ͢ΔʢίέΔʣͷ͕͍͠ ͦͷղܾํ๏ͷखஈͷ͕̍ͭʮςετΛ܁Γฦ͢ʯ͜ͱ
৽͘͠Ճ͞ΕΔʮςετͷ܁Γฦ࣮͠ߦʯػೳʹ̏ͭͷϞʔυ͕͋Δ
ෆ҆ఆͳςετ͕ੜ·ΕΔݪҼ ڝ߹ঢ়ଶڥґଘάϩʔόϧεςʔτ֎෦αʔϏεͱͷ࿈ܞ ෆ҆ఆͳςετΛ͢ͷ͕͍͠ཧ༝ ࠶ݱ͢ΔʢίέΔʣͷ͕͍͠ ͦͷղܾํ๏ͷखஈͷ͕̍ͭʮςετΛ܁Γฦ͢ʯ͜ͱ
৽͘͠Ճ͞ΕΔʮςετͷ܁Γฦ࣮͠ߦʯػೳʹ̏ͭͷϞʔυ͕͋Δ ͦΕͧΕͲ͏͍ͬͨಈ͖Λ͢Δͷ͔ɾ༻్Կ͔ɺ͕͜ͷηογϣϯͷ Ұ൪େࣄͳͱ͜Ζ
'JYFEJUFSBUJPOT
ޭࣦഊΘͣɺࢦఆͨ͠ճςετΛ࣮ߦ͢Δ ༻్ʮςετʹෆ҆ఆ͕͞ͳ͍͔ʯΛ֬ೝ͢ΔͨΊ 'JYFEJUFSBUJPOT
6OUJMGBJMVSF
ࢦఆͨ͠ճςετΛ࣮ߦ͢Δ͕ɺࣦഊ࣌Ͱऴྃ͢Δ ༻్ʮෆ҆ఆͳςετΛ͢ʢσόοά͢Δʣʯͱ͖ʹར༻͢Δ 6OUJMGBJMVSF
3FUSZPOGBJMVSF
ࢦఆͨ͠ճςετΛ࣮ߦ͢Δ͕ɺޭͨ࣌͠Ͱऴྃ͢Δ ༻్ʮ͡Ίࣦഊ͢Δ͕͍ͣΕޭ͢ΔΑ͏ͳςετʯΛಛఆ͢ΔͨΊ 3FUSZPOGBJMVSF
ʮςετͷ܁Γฦ࣮͠ߦʯػೳΛ༻͍ͨσϞ
࠷ۙ$*Ͱςετ͕࣌ʑίέΔ͜ͱʹؾͮ͘
ʮςετͷ܁Γฦ࣮͠ߦʯػೳΛҰ࣌తʹΦϯʹͯ͠࠶$*ͰςετΛ࣮ߦͯ͠ΈΔ
ͬͺΓϥϯμϜͰίέΔΑ͏ͩ
ϩʔΧϧͰ࠶ݱ͢Δ͔ࢼͯ͠ΈΑ͏ʢz3VOUFTU4PNF 3FQFBUFEMZzΛબʣ
l'JYFEJUFSBUJPOTzϞʔυʢճʹࢦఆʣͰ࣮ߦ
ϩʔΧϧͰϥϯμϜͰίέΔ͜ͱ͕࠶ݱͰ͖ͨʂʢճίέͨʣ
ϥϯμϜͰίέΔݪҼΛಛఆ͠Α͏ʢl6OUJMGBJMVSFzϞʔυͰ࣮ߦʣ
ςετ͕ίέͨͱ͖ʹσόοΨ͕ىಈ͞ΕΔʂ
मਖ਼Ͱ͖ͨΒ࠶z'JYFEJUFSBUJPOTzϞʔυͰ࣮ߦͯ͠ΈΔ
ճςετ͕ޭͨ͠🎉ʢ͜ͷςετ͔Βෆ҆ఆ͕͓ͦ͞Β͘ফ͑ͨʣ
·ͱΊ
ෆ҆ఆͳςετʢ࣌ʑίέΔʣͱ͍͏ͷ͕͋Δ ͦͷಛఆͷͨΊͷखஈͷ͕̍ͭʮςετͷ܁Γฦ࣮͠ߦʯ ৽͘͠ʮςετͷ܁Γฦ࣮͠ߦʯͷػೳ͕Ճ͞ΕͨͷͰɺෆ҆ఆͳςετ ͕ݟ͔ͭͬͨΒɺ͜ͷػೳͰಛఆɾमਖ਼Ͱ͖ͳ͍͔ࢼͯ͠ΈΑ͏
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠😊