...In RSpec, tests are not just scripts that verify your application code. 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. ...