Testing Overview
What is testing?
- Automated testing
- Code that tests your code!
- Remember -- your tests are untested code.
Why test?
You say your code works eh... would be a shame if something were to... test it.
- Prove that your code works
- Catch bugs before they're released
- Guard against regressions -- unintended side effects of your brand new feature
- Make changes and refactor with confidence!
- Improve the design of your code
What is RSpec?
Straight from the RSpec docs...
RSpec is a DSL for creating executable examples of how code is expected to
behave, organized in groups. It uses the words "describe" and "it" so we can
express concepts like a conversation:"Describe an account when it is first opened." "It has a balance of zero."
https://relishapp.com/rspec/rspec-core/v/3-4/docs/example-groups/basic-structure-describe-it