Hands-on Test-Driven Development
eBook - ePub

Hands-on Test-Driven Development

Using Ruby, Ruby on Rails, and RSpec

  1. English
  2. ePUB (mobile friendly)
  3. Available on iOS & Android
eBook - ePub

Hands-on Test-Driven Development

Using Ruby, Ruby on Rails, and RSpec

Book details
Table of contents
Citations

About This Book

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.

This 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.

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

Who Is This Book For

Beginner to intermediate Ruby software engineers who are interested in learning to use TDD with RSpec to test and build web applications using Ruby on Rails. Readers should have some basic experience with Ruby and Ruby on Rails and have read the "Getting Started with Rails" guide, or something similar.

Frequently asked questions

Simply head over to the account section in settings and click on “Cancel Subscription” - it’s as simple as that. After you cancel, your membership will stay active for the remainder of the time you’ve paid for. Learn more here.
At the moment all of our mobile-responsive ePub books are available to download via the app. Most of our PDFs are also available to download and we're working on making the final remaining ones downloadable now. Learn more here.
Both plans give you full access to the library and all of Perlego’s features. The only differences are the price and subscription period: With the annual plan you’ll save around 30% compared to 12 months on the monthly plan.
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, we’ve got you covered! Learn more here.
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Yes, you can access Hands-on Test-Driven Development by Greg Donald in PDF and/or ePUB format, as well as other popular books in Computer Science & Programming. We have over one million books available in our catalogue for you to explore.

Information

Publisher
Apress
Year
2023
ISBN
9781484297483

Table of contents

  1. Cover
  2. Front Matter
  3. 1. Introduction
  4. 2. What Is Test-Driven Development?
  5. 3. Getting Started with Ruby
  6. 4. Getting Started with Ruby on Rails
  7. 5. Setting Up RSpec and FactoryBot
  8. 6. Adding Initial Models
  9. 7. Creating Pages
  10. 8. Build Homepage Contents
  11. 9. Sidebar Contents
  12. 10. Page Tags
  13. 11. Images
  14. 12. User Authentication
  15. 13. Administration
  16. 14. Odds and Ends
  17. 15. Bonus: Deploy to Production
  18. Back Matter