Hands-on Test-Driven Development

Hands-on Test-Driven Development: Using Ruby, Ruby on Rails, and RSpec

eBook Details:

  • Paperback: 245 pages
  • Publisher: WOW! eBook (December 13, 2023)
  • Language: English
  • ISBN-10: 1484297474
  • ISBN-13: 978-1484297476

eBook Description:

Hands-on Test-Driven Development: Using Ruby, Ruby on Rails, and RSpec

Learn to properly test Ruby and Ruby on Rails applications by first writing failing tests, and then by implementing application code to make the failing tests pass. This book will teach you how to employ test-driven development (TDD) using RSpec while building a blog from start to finish. By the end of the book, you will be ready to deploy their fully tested blog to their own production web server using the latest versions of Ruby 3 and Ruby on Rails 7.

The biggest challenge with learning and becoming comfortable with test-driven development is that software engineers often cannot imagine what writing a failing test looks like in practice. They write their implementation code first, and only then think about writing tests around their implementation code. This leads to tests that pass by accident, or tests that do not actually test anything. This book will give you the confidence to write tests in the RSpec domain-specific language. You will see your tests fail “properly” before proceeding with writing any implementation code to get them to pass.

What You Will Learn

  • Build a blog application from start to finish using test driven development
  • Install and explore popular tools used in professional Ruby software engineering
  • Evaluate the benefits of effective testing in RSpec
  • Explore Capistrano for advanced user interface testing

This Hands-on Test-Driven Development book covers the latest techniques for writing RSpec tests, including “system” specs, and the often overlooked “view” specs, and how to integrate RSpec with other tools like Capybara, headless Chrome, and the new web driver gem. It also covers FactoryBot for mock test data and offers experienced advice on how to avoid creating tests that fail randomly.


Leave a Reply

Your email address will not be published. Required fields are marked *