- Use describe blocks for objects and methods ("given" scenarios)
- Use context blocks for "when" scenarios
- Avoid spec descriptions longer than 40 characters. Split into contexts if longer.
- Prefer expect syntax
- Use before blocks at the lowest scope necessary
- e.g. start within it blocks, then move into describe, then only if necessary for all tests put outside of those.
- Use validation tests and place them at the top of the describe block