Slide 1

Slide 1 text

! ςετΛॻ͔ͳ͍ͨΊͷςετ Omotesando.rb #105, Roppongi.rb #26 2025/01/09 1

Slide 2

Slide 2 text

ࣗݾ঺հ • ໊લ: ਖ਼ಙ ޼(aka: ਆ଎) • GitHub: @sinsoku (ը૾ӈ্) • X: @sinsoku_listy (ը૾ӈԼ) • Railsྺ: 10೥͘Β͍ 2

Slide 3

Slide 3 text

એ఻: sinsoku/rbs-trace 3

Slide 4

Slide 4 text

! sinsoku/rbs-trace • ςετͷ࣮ߦ࣌ʹܕ৘ใΛऩू • ࣗಈతʹ rbs-inline ͷίϝϯτΛૠೖ 4

Slide 5

Slide 5 text

! rbs-trace ͷ࿩͸4݄ࠒʁ 5

Slide 6

Slide 6 text

ຊ୊: ςετॻ͍͍ͯ·͔͢ʁ 6

Slide 7

Slide 7 text

! rbs-trace ͷΧόϨοδ 7

Slide 8

Slide 8 text

8

Slide 9

Slide 9 text

9

Slide 10

Slide 10 text

! ࠷ۙͷrbs-traceͷ։ൃ1 • खಈͷಈ࡞֬ೝ • RuboCop ͸ rubocop:disable ͰޡຐԽ͢ • Steep ͸ steep:ignore ͰޡຐԽ͢ • v0.x ͳͷͰޓ׵ੑ΋कΒͳ͍ 1 1্݄०ʹ࣮૷ͷ໨ॲΛཱ͔ͯͨͬͨ 10

Slide 11

Slide 11 text

! ࠷௿ݶͷಈ࡞֬ೝ͸͍ͨ͠2 2 ςετ͸ϦϦʔεલʹॻ͖·͢ɻͨͿΜ 11

Slide 12

Slide 12 text

! Smoke tests ࣮ࡍͷRailsΞϓϦʢRedmine, MastodonʣͰಈ࡞֬ೝ͢Δɻ • tmpσΟϨΫτϦʹ git-clone ͢Δ • ։ൃதͷgemΛೖΕΔ • ςετ͕શͯ௨Ε͹ɺͨͿΜେৎ෉ʁ 12

Slide 13

Slide 13 text

! sinsoku/rbs-trace#153 3 https://github.com/sinsoku/rbs-trace/pull/15 13

Slide 14

Slide 14 text

⭐ ϙΠϯτ • Bundler.with_unbundled_env • RailsΞϓϦͷGemfileΛ࢖͏ͨΊ • -"fail-fast -"seed 0 • 1ͭͰ΋ࣦഊͨ͠ΒςετΛࢭΊΔ • flaky tests Λආ͚Δ 14

Slide 15

Slide 15 text

✅ without rbs-trace 15

Slide 16

Slide 16 text

! with rbs-trace 16

Slide 17

Slide 17 text

! Τϥʔͳ͠ɺϤγʂ 17

Slide 18

Slide 18 text

༨ஊ: গ͠ύϑΥʔϚϯεվળͨ͠ 18