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
Property-based Testing の位置付け / Intro to Propert...
Search
Takuto Wada
PRO
December 20, 2023
Programming
11
6.7k
Property-based Testing の位置付け / Intro to Property-based Testing
2023/12/20(水)
https://findy.connpass.com/event/303813/
Takuto Wada
PRO
December 20, 2023
Tweet
Share
More Decks by Takuto Wada
See All by Takuto Wada
The Clean ArchitectureがWebフロントエンドでしっくりこないのは何故か / Why The Clean Architecture does not fit with Web Frontend
twada
PRO
76
27k
組織に自動テストを書く文化を根付かせる戦略(2024冬版) / Building Automated Test Culture 2024 Winter Edition
twada
PRO
30
10k
ピラミッド、アイスクリームコーン、SMURF: 自動テストの最適バランスを求めて / Pyramid Ice-Cream-Cone and SMURF
twada
PRO
10
1.9k
組織に自動テストを書く文化を根付かせる戦略(2024秋版) / Building Automated Test Culture 2024 Autumn Edition
twada
PRO
14
6.5k
これまでと違う学び方をしたら挫折せずにRustを学べた話 / Programming Rust techramen24conf LT
twada
PRO
31
28k
開発生産性の観点から考える自動テスト(2024/06版) / Automated Test Knowledge from Savanna 202406 Findy dev-prod-con edition
twada
PRO
36
25k
自動テスト実行結果の目的を整理する / Organizing objectives of automated test results
twada
PRO
14
3.3k
変更容易性と理解容易性を支える自動テスト(2024/02版) / Automated Test Knowledge from Savanna 202402 YAPC::Hiroshima edition
twada
PRO
22
14k
実録レガシーコード改善 / Working with Legacy Code: the True Record
twada
PRO
111
51k
Other Decks in Programming
See All in Programming
「”誤った使い方をすることが困難”な設計」で良いコードの基礎を固めよう / phpcon-odawara-2025
taniguhey
0
140
KawaiiLT 登壇資料 キャリアとモチベーション
hiiragi
0
110
Optimizing JRuby 10
headius
0
300
The Evolution of the CRuby Build System
kateinoigakukun
0
700
PHPバージョンアップから始めるOSSコントリビュート / how2oss-contribute
dmnlk
1
1k
Code smarter, not harder - How AI Coding Tools Boost Your Productivity | Webinar 2025
danielsogl
0
130
リアクティブシステムの変遷から理解するalien-signals / Learning alien-signals from the evolution of reactive systems
yamanoku
3
1.2k
Vibe Codingをせずに Clineを使っている
watany
17
6.2k
Develop Faster With FrankenPHP
dunglas
2
3.3k
ComposeでWebアプリを作る技術
tbsten
0
110
Building a macOS screen saver with Kotlin (Android Makers 2025)
zsmb
1
150
リアルタイムレイトレーシング + ニューラルレンダリング簡単紹介 / Real-Time Ray Tracing & Neural Rendering: A Quick Introduction (2025)
shocker_0x15
1
300
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
41
2.2k
Unsuck your backbone
ammeep
670
57k
Docker and Python
trallard
44
3.3k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
5
540
YesSQL, Process and Tooling at Scale
rocio
172
14k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
Site-Speed That Sticks
csswizardry
5
490
Producing Creativity
orderedlist
PRO
344
40k
Rails Girls Zürich Keynote
gr2m
94
13k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.8k
Navigating Team Friction
lara
184
15k
Designing Experiences People Love
moore
141
24k
Transcript
1SPQFSUZCBTFE5FTUJOHͷҐஔ͚ 📷🙆 🙆 5BLVUP8"%"ʢ!U@XBEBʣ ςετઓུ@ fi OEZ rev.3 %FD !'JOEZ
,OPXOLOPXO LOPXOVOLOPXO VOLOPXOVOLOPXO IUUQTQPTUTUBUVTDPNLOPXOLOPXOTLOPXOVOLOPXOTBOEVOLOPXOVOLOPXOT
5%%ͷ5 ʮςετʯͳͷͩΖ͏͔
5FTUJOHWT$IFDLJOH IUUQXXXEFWFMPQTFOTFDPNCMPHUFTUJOHWTDIFDLJOH
5IF5XP4JEFTPG4PGUXBSF5FTUJOH$IFDLJOHBOE&YQMPSJOH IUUQTXXXBHJMFDPOOFDUJPODPNBSUJDMFUXPTJEFTTPGUXBSFUFTUJOHDIFDLJOHBOEFYQMPSJOH
5IF5XP4JEFTPG4PGUXBSF5FTUJOH$IFDLJOHBOE&YQMPSJOH 5FTUJOH$IFDLJOH &YQMPSJOH IUUQTXXXBHJMFDPOOFDUJPODPNBSUJDMFUXPTJEFTTPGUXBSFUFTUJOHDIFDLJOHBOEFYQMPSJOH
ιϑτΣΞ։ൃະͱطͷਞऔΓ߹ઓ 5FTUJOH$IFDLJOH &YQMPSJOH IUUQTXXXBHJMFDPOOFDUJPODPNBSUJDMFUXPTJEFTTPGUXBSFUFTUJOHDIFDLJOHBOEFYQMPSJOH ,OPXOLOPXOˠ,OPXOLOPXO
ιϑτΣΞ։ൃະͱطͷਞऔΓ߹ઓ 5FTUJOH$IFDLJOH &YQMPSJOH IUUQTXXXBHJMFDPOOFDUJPODPNBSUJDMFUXPTJEFTTPGUXBSFUFTUJOHDIFDLJOHBOEFYQMPSJOH ,OPXOVOLOPXOˠ,OPXOLOPXO
͕ࣗΒͳ͍ͷΛ୳ࡧʢ&YQMPSFʣͰ͖Δ͔ ͋ͳ͕ͨίʔυΛهड़͠ɺςετΛهड़͢Δͱ͍͏߹ɺͦͷํʹޡͬͨԾఆ͕ ·͗Ε͜ΜͰ͠·Θͳ͍ͷͰ͠ΐ͏͔ ͋ͳͨͷཧղʹج͍ͮͯͷ͝ͱ͕ਐΉҎ্ɺίʔυςετΛύε͢ΔͣͰ͢ɻ ʰୡਓϓϩάϥϚʔୈ൛ʱQQ IUUQTXXXPINTIBDPKQCPPL
͕ࣗΒͳ͍ͷΛ୳ࡧʢ&YQMPSFʣͰ͖Δ͔ 5FTUJOH$IFDLJOH &YQMPSJOH IUUQTXXXBHJMFDPOOFDUJPODPNBSUJDMFUXPTJEFTTPGUXBSFUFTUJOHDIFDLJOHBOEFYQMPSJOH ͩΕ͕Δ
୳ࡧతςετະ͔Βط 63- IUUQTQSBHQSPHDPNUJUMFTFIYUBFYQMPSFJU
͔͠͠ʜʜ
ۀ͢ΔͱࣦΘΕΔͷ͕͋Δ ͜ͷΛճආ͢Δͭͷํ๏ɺผͷਓʹςετΛهड़ͯ͠Βͬͯίʔυͷςε τΛ࣮ࢪ͢Δͱ͍͏ͷͰ͕͢ɺզʑ͜ͷํ๏Λ·͍͠ͱߟ͍͑ͯ·ͤΜɻ ͱ͍͏ͷɺʮίʔυͷͨΊͷςετʯͰॻ͍ͨΑ͏ʹɺςετʹ͍ͭͯߟ͑Δ͜ͱ Ͱɺهड़͢Δίʔυ͕దͳͷʹͳ͍ͬͯ͘ͱ͍͏େ͖ͳར͕͋ΔͨΊͰ͢ɻ ςετͱίʔσΟϯάΛׂͯ͠͠·͑ɺ͜ͷར͕ࣦΘΕͯ͠·͏ͷͰ͢ɻ ʰୡਓϓϩάϥϚʔୈ൛ʱQ IUUQTXXXPINTIBDPKQCPPL
ۀ͢ΔͱࣦΘΕΔͷ͕͋Δ IUUQTXXXBNB[PODPKQEQ ։ൃऀ͕ςετͷ࡞ɾཧʹؔ༩͢ΔͱɺͭͷॏཁͳޮՌ͕ੜ͡Δ ։ൃऀ͕ςετΛ࡞͢Δͱίʔυ͕ΑΓςετՄೳͳͷʹͳΔ ࣗಈςετʹର͢ΔΛ։ൃऀ͕ෛ͏ͱɺςετʹର͢Δҙ͕ࣝߴ·Γɺ ͦͷཧमਖ਼ʹΑΓྗ͢Δ͜ͱʹͳΔ ʰ-FBOͱ%FW0QTͷՊֶʱQʢ˞༁ΛҰ෦มߋʣ
ͦ͜Ͱ1SPQFSUZCBTFE5FTUJOHͰ͢Α ͦ͏Ͱͳ͘զʑɺ͋ͳͨͷ๊͘༧Λڞ༗͍ͯ͠ͳ͍ίϯ ϐϡʔλʔ͕ɺ͋ͳͨͷͨΊʹςετΛ࣮ࢪ͢Δͱ͍͏ସ͕ దͩͱߟ͍͑ͯ·͢ɻ ʰୡਓϓϩάϥϚʔୈ൛ʱQ IUUQTXXXPINTIBDPKQCPPL
1SPQFSUZCBTFE5FTUJOHͷҐஔ͚ʢࢲݟʣ IUUQTXXXPINTIBDPKQCPPL
1#5ͱʢ&YBNQMFCBTFE5FTUJOHʣ૬ޓิͷؔ ϓϩύςΟʔϕʔεͷςετɺෆมੑͱܖͱ͍͏؍͔Βίʔυʹ͍ͭͯߟ͑ͤͯ͘͞ΕΔ ͷͰ͢ɻͭ·Γɺมߋ͍͚ͯ͠ͳ͍ͷԿ͔ͱɺຊͷͷԿ͔ͱ͍͏͜ͱΛߟ͑ͤͯ͞ ͘ΕΔΘ͚Ͱ͢ɻ͜͏͍ͬͨಎΛՃ͑Δ͜ͱͰɺίʔυʹຐ๏͕͔͔Γɺڥք݅ͷᐆດ͕͞ ফ͑ڈΓɺ߹ੑͷͳ͍ঢ়ଶʹσʔλΛஔ͘ػೳʹޫ͕ͨΔͷͰ͢ɻ զʑϓϩύςΟʔϕʔεͷςετ͕ϢχοτςετΛิ͢Δͷͩͱ֬৴͍ͯ͠·͢ɻϓϩ ύςΟʔϕʔεͷςετ͞·͟·ͳݒ೦ʹऔΓΈɺͦΕͧΕݻ༗ͷརΛͨΒͯ͘͠ΕΔ ͷͰ͢ɻ ʰୡਓϓϩάϥϚʔୈ൛ʱQ IUUQTXXXPINTIBDPKQCPPL
ZNPUPOHQPP͞Μੌ͍ʢϤΠγϣʣ ,OPXOVOLOPXOʹ Ξϓϩʔν͢Δख๏ 6OLOPXOVOLOPXOʹ Ξϓϩʔν͢Δख๏
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ ςετઓུ@ fi OEZ