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
RSpecで書かれたテストの高速化 / TokyuRubyKaigi10
Search
Yuichi Goto
May 29, 2016
Technology
2
2.5k
RSpecで書かれたテストの高速化 / TokyuRubyKaigi10
TokyuRuby会議10(2016/05/29)
Yuichi Goto
May 29, 2016
Tweet
Share
More Decks by Yuichi Goto
See All by Yuichi Goto
[Teaser] Type-Safe Lightweight DDD with Effect Schema
yasaichi
1
110
Google Cloud を用いたソフトウェア開発の内製化組織の早期立ち上げの実現 / Rapid Establishment of In-House Software Development Teams Using Google Cloud
yasaichi
1
880
[EN] Robust and Scalable API Gateway Built on Effect
yasaichi
3
240
Effectで作る堅牢でスケーラブルなAPIゲートウェイ / Robust and Scalable API Gateway Built on Effect
yasaichi
8
1.8k
あるRailsエンジニアがビジネスリーダーに転身するまで
yasaichi
8
2.8k
Active Recordから考える次の10年を見据えた技術選定 / Architecture decision for the next 10 years at PIXTA
yasaichi
50
21k
Active Recordから考える次世代のRuby on Railsの方向性 / Directions for the next generation of Ruby on Rails: From the viewpoint of its Active Record
yasaichi
38
20k
ピクスタのエンジニアリングとCircleCI / Software Engineering with CircleCI at PIXTA
yasaichi
1
400
Ruby on Railsの正体と向き合い方 / What is Ruby on Rails and how to deal with it?
yasaichi
143
90k
Other Decks in Technology
See All in Technology
RemoveだらけのPHPUnit 12に備えよう
cocoeyes02
0
280
短縮URLをお手軽に導入しよう
nakasho
0
150
Goで作って学ぶWebSocket
ryuichi1208
3
2.7k
日経のデータベース事業とElasticsearch
hinatades
PRO
0
230
Exadata Database Service on Cloud@Customer セキュリティ、ネットワーク、および管理について
oracle4engineer
PRO
2
1.5k
依存パッケージの更新はコツコツが勝つコツ! / phpcon_nagoya2025
blue_goheimochi
3
210
MIMEと文字コードの闇
hirachan
2
1.4k
【内製開発Summit 2025】イオンスマートテクノロジーの内製化組織の作り方/In-house-development-summit-AST
aeonpeople
2
620
設計を積み重ねてシステムを刷新する
sansantech
PRO
0
160
Cracking the Coding Interview 6th Edition
gdplabs
14
28k
NFV基盤のOpenStack更新 ~9世代バージョンアップへの挑戦~
vtj
0
350
Amazon Q Developerの無料利用枠を使い倒してHello worldを表示させよう!
nrinetcom
PRO
2
110
Featured
See All Featured
Visualization
eitanlees
146
15k
Optimizing for Happiness
mojombo
376
70k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.5k
Fireside Chat
paigeccino
34
3.2k
We Have a Design System, Now What?
morganepeng
51
7.4k
Documentation Writing (for coders)
carmenintech
67
4.6k
Unsuck your backbone
ammeep
669
57k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
430
Become a Pro
speakerdeck
PRO
26
5.2k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
21
2.5k
Bash Introduction
62gerente
611
210k
How to Think Like a Performance Engineer
csswizardry
22
1.4k
Transcript
RSpecͰॻ͔Εͨςετͷ ߴԽ TokyuRubyKaigiɹ2016/05/29 @yasaichi
ࣗݾհ [1] pry(main)> me => { twitter: "@_yasaichi", github: "yasaichi",
blog: "http://web-salad.hateblo.jp" }
ൃද༰ 1. എܠ 2. ݕ౼ࣄ߲ 3. ݁Ռ 4. ·ͱΊ
എܠ
എܠ • “ຊମ”ͷςετʹΊͬͪΌ͕͔͔࣌ؒΔ • ςετέʔε3ສʢهʣɺ1ͩͱ࣌ؒ • CIαʔϏεͰฒྻ࣮ߦͯ͠೫ࡔ46ͷ ΞϧόϜ1ຕௌ͚Δ͘Β͍ͭ
೫ࡔϑΝϯతʹخ͍͠ ͕ɺϏδωεϚϯతʹخ͘͠ͳ͍ͷͰɾɾɾ
αʔϏεͷػೳՃɾվળΛ ૉૣ͘ܧଓతʹߦ͏ͨΊʹɺ ςετͷߴԽ͕ඞཁ ʂʂʂ (ʆɾωɾ´)ŝžŕ
ݕ౼ࣄ߲
ީิ • ࣍ͷ3ͭͷgemͷར༻Λݕ౼ • parallel_tests • test-queue • RRRSpecʢΫοΫύου͞Μʙʙʣ
ॴײ1 • test-queue >= parallel_tests • Master-WorkerύλʔϯΛ࠾༻͍ͯ͠ΔͷͰ ֤ϓϩηεͰ࣮ߦ͕࣌ؒภΓʹ͍͘ • ͲͪΒϚγϯεϖοΫͷ੍Λड͚Δ
ॴײ2 • test-queue ≒ RRRSpec • தنʢ1ͷϚγϯͰेఔʣͳΒ test-queueͷํ͕͓खܰ • େنͳΒࢄ࣮ߦɾεέʔϧΞτʹ
ΑΔॊೈͳӡ༻͕ՄೳͳRRRSpec
ฐࣾͰ • ࠷ॳʹtest-queueΛಋೖͯ͠Έͨ • 16ίΞͷϚγϯͰ16ฒྻͱ͔ͬͯΈͨ ͚Ͳظ͢Δ࣮ߦ࣌ؒʹͳΒͳ͔ͬͨ • ͱ͍͏Θ͚ͰRRRSpecΛಋೖ
݁Ռ
͔͜͜ΒΫοΫύου͞Μͷ ճ͠ऀʹͳΓ·͢
ΊͬͪΌ͘ͳͬͨ • 15ఔ·Ͱॖ • ϦϦʔεαΠΫϧ͕େ෯ʹॖ • ίετ10%ఔݮͨ͠ • ΫοΫύουͳ͠Ͱੜ͖͍͚ͯͳ͍ମʹ
ͨͩ݁ߏେมͩͬͨ • ͋Μ·Γใ͕ͳ͍ • GitHubʹυΩϡϝϯτ͕͋Δʹ͋Δ͕ ίʔυΛݟͳ͍ͱΘ͔Βͳ͍͜ͱଟ͍ • DockerͰಈ͘αϯϓϧ͋Δ͕͔͜͜Β ࣮ӡ༻࣌ͷߏΛΠϝʔδ͠ʹ͍͘
None
ؤுͬͯམͱ͠ࠐΜͩ • https://github.com/yasaichi/rrrspec-tutorial • ฐࣾͰͷ࣮ӡ༻࣌ͷߏʹ͔ͳΓ͍ۙ • ίϛοτΛॱʹ͍ͬͯ͘͜ͱͰҙຯ͕ Θ͔Δͣɾɾɾʂ
·ͱΊ
·ͱΊ • ςετ͕͔ͬͨͷͰRRRSpecΛಋೖͨ͠ • CDΞϧόϜ1ຕ -> 15 & ίετݮ •
ͨͩɺͦΕͳΓʹେมͩͬͨͷͰΦϨΦϨ αϯϓϧ༻ҙͨ͠Α
One more thing…
None
͓ΘΓ