...They’re also specifications (or specs, for short): detailed explanations of how the application is supposed to behave, expressed in plain English. RSpec follows semantic versioning, which means that “major version” upgrades (e.g., 2.x → 3.x) come with breaking changes. If you’re upgrading from version 2.x or below, read the rspec-rails upgrade notes to find out what to watch out for. In RSpec, assertions are called expectations, and every expectation is built around a matcher. When you expect(a).to eq(b), you’re using the eq matcher. RSpec Rails defines ten different types of specs for testing different parts of a typical Rails application. ...