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
def tdd_ios( hint: RubyMotion )
Search
Jon Rowe
March 12, 2013
Programming
160
0
Share
def tdd_ios( hint: RubyMotion )
Lightening talk about RubyMotion, iOS and testing. Presented at March RoRo Sydney meet.
Jon Rowe
March 12, 2013
More Decks by Jon Rowe
See All by Jon Rowe
RSpec - Level Up
jonrowe
0
310
Learning From Other Languages - Immutability
jonrowe
0
170
Intro-spec-tion RubyConfAU 2016
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
640
Upgrading RSpec - RoRoSyd June 14
jonrowe
1
110
def tdd_ios( hint: RubyMotion ) @ #SydInMotion
jonrowe
0
130
Tales Of Interest - RubyConfAU 2014
jonrowe
0
84
RSpec... Your doing it wrong... RoRoSYD Lightning Talk October 2013
jonrowe
0
150
Other Decks in Programming
See All in Programming
車輪の再発明をしよう!PHP で実装して学ぶ、Web サーバーの仕組みと HTTP の正体
h1r0
3
520
Vibe NLP for Applied NLP
inesmontani
PRO
0
360
Mastering Event Sourcing: Your Parents Holidayed in Yugoslavia
super_marek
0
150
Swift Concurrency Type System
inamiy
0
480
実践ハーネスエンジニアリング #MOSHTech
kajitack
7
6.3k
ハーネスエンジニアリングにどう向き合うか 〜ルールファイルを超えて開発プロセスを設計する〜 / How to approach harness engineering
rkaga
3
660
Oxlintとeslint-plugin-react-hooks 明日から始められそう?
t6adev
0
200
「話せることがない」を乗り越える 〜日常業務から登壇テーマをつくる思考法〜
shoheimitani
4
740
iOS機能開発のAI環境と起きた変化
ryunakayama
0
180
Feature Toggle は捨てやすく使おう
gennei
0
570
「接続」—パフォーマンスチューニングの最後の一手 〜点と点を結ぶ、その一瞬のために〜
kentaroutakeda
5
2.5k
我々はなぜ「層」を分けるのか〜「関心の分離」と「抽象化」で手に入れる変更に強いシンプルな設計〜 #phperkaigi / PHPerKaigi 2026
shogogg
2
930
Featured
See All Featured
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
310
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Building an army of robots
kneath
306
46k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
130
Leo the Paperboy
mayatellez
7
1.6k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
110
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4k
Agile that works and the tools we love
rasmusluckow
331
21k
How to Talk to Developers About Accessibility
jct
2
170
Practical Orchestrator
shlominoach
191
11k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.7k
Transcript
def tdd_ios( hint: RubyMotion) @JONROWE
ObjectiveC
ObjectiveC TDD IS HARD!
ObjectiveC TDD IS HARD! (or just not popular)
PhoneGap?
PhoneGap? JS
PhoneGap? JS TDD’able
PhoneGap? JS TDD’able Sucks...
RubyMotion?
RubyMotion? Ruby
RubyMotion? Ruby Compiles
RubyMotion? Ruby Compiles Access to all the APIs
Has testing built in
Bacon
Bacon MacBacon
Bacon MacBacon Runs In Simulator
None
Unit Testing
Unit Testing Integration Testing
Unit Testing Integration Testing Acceptance Testing (limited)
Use Rubyisms
Use Rubyisms Stub web requests
Use Rubyisms Stub web requests Simulate device events
Felt Like Rails
Solution?
Pure Ruby Library
Pure Ruby Library RSpec / MiniTest
Pure Ruby Library RSpec / MiniTest Ruby 2.0.0
Caveats:
Caveats: Libs don’t always behave the same.
Caveats: Libs don’t always behave the same. (JSON)
Caveats:
Caveats: no require
Caveats: no require no metaprogramming
Caveats: no require no metaprogramming alloc / init vs initialize
end