Book Image

RSpec Essentials

By : Mani Tadayon
Book Image

RSpec Essentials

By: Mani Tadayon

Overview of this book

This book will teach you how to use RSpec to write high-value tests for real-world code. We start with the key concepts of the unit and testability, followed by hands-on exploration of key features. From the beginning, we learn how to integrate tests into the overall development process to help create high-quality code, avoiding the dangers of testing for its own sake. We build up sample applications and their corresponding tests step by step, from simple beginnings to more sophisticated versions that include databases and external web services. We devote three chapters to web applications with rich JavaScript user interfaces, building one from the ground up using behavior-driven development (BDD) and test-driven development (TDD). The code examples are detailed enough to be realistic while simple enough to be easily understood. Testing concepts, development methodologies, and engineering tradeoffs are discussed in detail as they arise. This approach is designed to foster the reader’s ability to make well-informed decisions on their own.
Table of Contents (17 chapters)
RSpec Essentials
About the Author
About the Reviewers

Chapter 9. Configurability

In this chapter, we will learn how to configure applications using simple, robust tools based on environment variables. We'll learn about configurability and its importance to testability. We'll deal with real-world configuration concerns that come up during development and testing. We'll address these concerns in a way that makes testing easy but addresses the safety and security requirements of a production environment.

Although we won't directly use RSpec at all in this chapter, its contents are the most important in this book. That is because proper configuration management is fundamental to testability and is something that is often done wrong. You can learn about RSpec easily from other sources, but configurability is one of those real-world concerns that is difficult to learn except the hard way: though direct experience, making mistakes, and learning from them through trial and error.

Here is what we will cover in this chapter:

  • Configuration via environment...