We try to keep our books accurate, but sometimes mistakes creep in. This page lists the errors submitted by our astute readers. If you've found a new error, please submit it.

The latest version of the book is P1.0, released 4 months ago. If you've bought a PDF of the book and would like to upgrade it to this version (for free), visit your home page.

Key: Typo Tech. Error Suggestion Not a problem Next edition

By default this page displays the errata for the latest version of the book. If you have a previous version, select it here:  

(To find out what version you have, look at the copyright page, a few pages in from the front of the book. If it says (say) 'Second Printing', then here it'll be P2.0. If there are interim PDF releases in that printing, they'll be 2.1, 2.2, and so on.)

PDF Paper Description Found in Fixed in
passi
#48702: If you're going to use require_relative, you might as well use the new hashrocket-less syntax. I imagine books will migrate to the Ruby 1.9...more...
P1.0
10-Feb-12
viii

#48679: "Spoken languages" should be "Spoken Languages"--Mark Wilden

P1.0
08-Feb-12
xii

#48680: "I found myself asking.)" should be "I found myself asking)" (no period)--Mark Wilden

P1.0
08-Feb-12
0
#48718: Bundler instructions assume too much prior knowledge of the reader: could be more user friendly. See forum topic 10355 (The form won't let ...more...
Matt Wynne says: http://forums.pragprog.com/forums/166/topics/10355
P1.0
14-Feb-12
29
#48648: The test.feature file should not live in the root dir, but in the features dir. In case the reader just adds on top of what was done in the pr...more...
P1.0
03-Feb-12
46
#48663: Scenario: Expiry date invalid When I enter a card expiry date that's in the past And all the other details are correct And I submit the for...more...
B9.0
05-Feb-12
54%
#48649: Have not got access to page number as reading book on Kindle. However in the Joe Asks: Should I Show Synchronization Points in My Features sec...more...
P1.0
03-Feb-12
61

#48605: (2nd paragraph) instead of "a reading computer program" you want "reading a computer program".--Brian Cartwright

P1.0
28-Jan-12
83
#48952: “Refactor the feature to make use of the new keyword and compare the new version of the feature with the old one.” The “new keyword” is not s...more...
P1.0
17-Mar-12
85

#48681: "bravely refactoring in code that previously" can just be "bravely refactoring code that previously" (delete "in")--Mark Wilden

P1.0
08-Feb-12
144
#48786: On page 144, there is an error in the code: class UserInterface def withdraw_from... withdraw_from should be withdrawal_from to match t...more...
P1.0
20-Feb-12
144

#48787: Oops. Page 144 doesn't have an error. Disregard.--Shaun

P1.0
21-Feb-12
168

#49014: “It didn’t get chance to update the balance before Cucumber checked it and failed the scenario.”
Should be “didn’t get a chance”.--Frau Sma

P1.0
29-Mar-12
174
#48701: "ActiveRecord was born in the Ruby on Rails framework". This should make it clear that it was the gem that was born of Rails. The design patte...more...
P1.0
10-Feb-12
176

#49015: “This is why we ’ve removed the :balance field that we had before we refactored the class.”
Extra space in “we ’ve”.--Frau Sma

P1.0
30-Mar-12
185
#49016: “The advantage of truncation that it’s a cleaning strategy that works reliably when we have more than one database connection” is missing a ve...more...
P1.0
30-Mar-12
192

#49017: In “As the number of feature and scenarios grows”, “feature” should be “features”.--Frau Sma

P1.0
30-Mar-12
198
#48726: "This file must be placed either in your project's root directory or underneath a directory called config." Supposed to be "underneath in a di...more...
P1.0
16-Feb-12
199
#49018: “CI systems detect failure by inspecting the exit status of the processes it’s running”: There’s a singular/plural issue (“CI systems” does no...more...
P1.0
30-Mar-12
199

#49019: “Cucumber exits only with an error status (a nonzero value) if there is one or more failing steps”: should be “there are one or more”.--Frau Sma

P1.0
30-Mar-12
214

#49020: In “They each have their strength and weaknesses”, “strength” should be “strengths”.--Frau Sma

P1.0
30-Mar-12
217

#48727: Unused variable in code: try_again.--Mark Wilden

P1.0
16-Feb-12
222

#48730: "Feathers' [recipe]" should be "Feathers's [recipe]". There is only one Feathers here.--Mark Wilden

P1.0
16-Feb-12
235
#48569: Since you're discussing what the cucumber installer does, it would be useful if you could also explain the line cucumber 1.2.1 adds to the dat...more...
B10.0
25-Jan-12
251

#48540: After the contents of Gemfile, but before "cd squeaker".

Need to run 'bundle' after editing Gemfile.
Need to run it for the test group.--Joost Baaij

B10.0
17-Jan-12
251

#48600: name="criteria"
should be
name="query"--iain

P1.0
27-Jan-12
257

#48759: "we never ran it yet" should be "we haven't run it yet"--Mark Wilden

P1.0
17-Feb-12
258
#48760: "We're only *entering* text ... we are not submitting the form by clicking the button or hitting the Enter/Return key" Instead of "entering...more...
P1.0
17-Feb-12
267

#48761: "Capybara's rack mode"--Mark Wilden

P1.0
17-Feb-12
284

#48728: The list of files at the top of the page could contain Gemfile and Gemfile.lock.--Mark Wilden

P1.0
16-Feb-12
291

#48664: The /^I run "(.*)"$/ step definition is deprecated. Please use the `backticks` version.
--Martin Harrigan

P1.0
05-Feb-12
295

#48666: "Out first two steps" should be "Our first two steps".--Martin Harrigan

P1.0
05-Feb-12
296

#48601: unnecessary page break before list of platforms--iain

P1.0
27-Jan-12
299
#48729: "These [gems] are installed by adding them to your Gemfile and running bundle update". Bundle update will work for the example Gemfile, becaus...more...
P1.0
16-Feb-12
304
#48796: I had to change my selector as appearing in the 05 code fro movie_steps/rb to get pass from When /^I create a movie Caddyshack in the Comedy...more...
P1.0
22-Feb-12
2011 Dpuiq

#48996: Your article was exclleent and erudite.--EVnKtzNulPCwZ

P1.0
27-Mar-12