Updated format to include the version number for Kindle library.
This beta updates the rest of the book to RSpec 2 and Rails 3, with all of the examples working against rspec-2.0.0.beta.19 and the Rails 3 release candidate rails-3.0.0.rc.
This is the the final beta before we go into production.
The authors would all like to take this opportunity to thank you for all of the wonderful and helpful feedback we’ve gotten during this beta phase. You’ve all made this book much better than it ever could have been without your participation.
Shortly after we released beta 13, we made the rather ambitious decision to update the book for RSpec-2 and Rails-3, both of which were in progress, but months away from their respective releases. This is the first beta since that decision, and we’ve updated all of the chapters in Part I to work with the latest beta version of RSpec-2. As you’re reading, you can look at the page heading—-if it is red, the chapter has been updated, and if it is gray, it’s still the old chapter.
We’re working hard to get the rest of the book updated, so keep your eyes peeled over the coming weeks for two more beta releases. The first will update Part III to use RSpec-2, and the second will update Part V to use RSpec-2 and Rails-3.
In the meantime, the code download will be a bit of a mess—-it will contain some RSpec2 code and some of the older code. We thought for a long time about whether to delay this beta until it was all up to date, but decided in the end that you all had waited long enough—-now that RSpec 2 is out and Rails 3 is just around the corner, we wanted to get this new content to you as soon as we could.
This beta includes the final two chapters: Chapter 18, Intro to Cucumber, on page 263 and Chapter 19, Cucumber Detail, on page 281. The intro chapter presents a high level view of Cucumber and its role in a BDD project. The second chapter provides detailed information about how to connect plain text scenarios to code.
We also made some other significant changes. Based on feedback from beta readers, we’ve reworked the entire Codebreaker example. Even if you’ve already read it, you’ll want to read it again.
We’re very close to the end of beta now! In this release we fixed a number of errata and added a new chapter:
This is the last chapter in the Codebreaker example. We look at new requirements that force us to revisit the design on a grander scale than in the previous chapters. The combination of Cucumber scenarios and RSpec code examples supports making big changes safely, and allows for the application and code-level behaviour to evolve independently of each other.
For this beta release we’ve addressed a lot of errata and edited all of the chapters in the Rails section, bringing them up to date with the latest Rails, RSpec, Cucumber, Selenium and Webrat.
This release sports more fixed errata and one new chapter: Automating the Browser with Webrat and Selenium
This new chapter shows you how to drive Cucumber scenarios right through your browser using Webrat and Selenium. You’ll type a single command and watch a browser fire up and walk through each scenario step by step right before your very eyes, and then see a standard Cucumber report in the shell. It’s a sight to behold, and a great way to drive out behaviour that requires JavaScript.
Codebreaker: We’ve changed the name of the game in the tutorial in Part I to Codebreaker.
Update to latest gems: We’ve gone through the book and updated all the practical examples to the latest gem versions, which are:
• rspec-1.2.7 • rspec-rails-1.2.7 • cucumber-0.3.11 • webrat-0.4.4
While we plan to update the final print book to the latest versions of all of these gems at the time we go to print, we don’t anticipate any significant changes between now and then.
This release includes a number of fixed errata, two new chapters, and a bit of re-organization.
This release introduces two new chapters:
Continuing inward on our outside-in journey, this chapter explores how (and when) to write controller specs. We also introduce approaches to dealing with some controller-specific spec’ing challenges like filters, global behaviour defined in ApplicationController, and sending email.
This chapter introduces techniques for extending RSpec to cater to domain-specific needs. Covered topics include custom example group classes, custom matchers (including an exciting new matcher definition DSL), macros and custom formatters. Whether customizing RSpec for your own app, or in order to ship domain-specific spec’ing extensions with the libraries you’re releasing, this chapter is filled with really useful information that will help you make your specs easier to write and read.
Two new chapters: