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
Intro-spec-tion RubyConfAU 2016
Search
Jon Rowe
February 11, 2016
Technology
180
0
Share
Intro-spec-tion RubyConfAU 2016
A whirlwind tour of the internals of RSpec.
Jon Rowe
February 11, 2016
More Decks by Jon Rowe
See All by Jon Rowe
RSpec - Level Up
jonrowe
0
310
Learning From Other Languages - Immutability
jonrowe
0
180
RSpec + Rails Without rspec-rails @ RoRoSyd November 2015
jonrowe
1
260
RSpec 3 and why I `expect(you).to care`
jonrowe
3
650
Upgrading RSpec - RoRoSyd June 14
jonrowe
1
110
def tdd_ios( hint: RubyMotion ) @ #SydInMotion
jonrowe
0
130
Tales Of Interest - RubyConfAU 2014
jonrowe
0
92
RSpec... Your doing it wrong... RoRoSYD Lightning Talk October 2013
jonrowe
0
160
expect(RSpec::3).to be_coming_soon @Dius_AU September 2013
jonrowe
0
210
Other Decks in Technology
See All in Technology
Platform Engineering as a Product: Criteria for Improvement and Multi-Tenant Design
kumorn5s
0
500
SIer20年! 培ったスキルがスタートアップで輝く時
shucho0103
0
320
電子辞書Brainをネットに繋げてみた(自力編)
raspython3
0
480
AI駆動開発が変える、大規模開発の前提 ーHuman in the Loop から Human on the Loop へ / AIE2026
visional_engineering_and_design
6
4.4k
タクシーアプリ『GO』の実践的データ活用
mot_techtalk
2
150
製造業のクラウド活用最適解〜AI,DXを加速するデータ基盤の作り方〜
hamadakoji
0
370
AI活用を推進するために ファインディが下した、一つの小さな決断
starfish719
0
250
価格.comをAI駆動で全面刷新する ー 30年分の技術的負債を返し、次の30年の土台をつくる ー / AI Engineering Summit Tokyo 2026
tkyowa
49
52k
2026.06.13_AI時代に事業会社が「SIer出身エンジニア」を求める理由 / Why Businesses Seek Engineers with a System Integrator Background in the AI Era
jumtech
0
490
ブロックチェーン / Blockchain
ks91
PRO
0
110
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
50k
そのPoC、何を検証したつもりでしたか? AIプロダクトの価値検証で陥った落とし穴
techtekt
PRO
0
150
Featured
See All Featured
A designer walks into a library…
pauljervisheath
211
24k
Abbi's Birthday
coloredviolet
2
7.9k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
310
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
320
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
360
The Spectacular Lies of Maps
axbom
PRO
1
790
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
55k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
460
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
Tell your own story through comics
letsgokoyo
1
940
Game over? The fight for quality and originality in the time of robots
wayneb77
1
190
The Cult of Friendly URLs
andyhume
79
6.9k
Transcript
Intro-spec-tion @JonRowe
WHAT IS RSPEC?
<test-unit>
<rspec>
BUT WHAT *IS* RSPEC?
None
CORE MOCKS EXPECTATIONS
CORE MOCKS EXPECTATIONS
CORE MOCKS EXPECTATIONS
CORE MOCKS EXPECTATIONS
CORE MOCKS EXPECTATIONS
CORE
CORE SHOULDA
None
EXPECTATIONS TestUnit
None
EXPECTATIONS TestUnit MOCKS
ETC ETC ETC…
None
BUT WHAT *IS* RSPEC?
ANATOMY OF A SPEC
<rspec>
<core only>
<core only> Example Group
<core only> Instance Methods
<core only> Hooks
<core only> Example
None
None
RSPEC CORE
THE WORLD
CONFIGURATION
THE REPORTER
THE RUNNER
WAIT… EXAMPLE GROUPS…
Runner ExampleGroup Example #<ExampleGroup> before(:suite) before(:group) before(:each)
<rabbit hole>
Runner ExampleGroup Example #<ExampleGroup> after(:suite) after(:group) after(:each)
<blue pill>
<heirarchy>
BUT WHY
JUST RUBY
<include>
<include>
<include>
RSPEC EXPECTATIONS
<core only>
<rspec>
<target>
<matcher>
<protocol>
<DSL>
<class>
<class>
RSPEC MOCKS
<mocks>
<mocks>
<mocks>
SO HOW DOES IT WORK?
<protocol>
RSPEC RAILS
None
None
None
after(:talk)
Thanks @JonRowe