michal-sapka-me

Codebase for my homepage.
git clone git://vcs.sapka.me/michal-sapka-me
Log | Files | Refs

commit a949b5012fc626aaec1608c2dc043c1dcc146cf7
parent b8488ac4cac9ede57d95e98f2d94251db80e8951
Author: d-s <ds@voyager.local>
Date:   Fri, 31 Mar 2023 22:58:59 +0200

feat: article for 2023-03-31

Diffstat:
Acontent/2023/rspec-options.md | 21+++++++++++++++++++++
1 file changed, 21 insertions(+), 0 deletions(-)

diff --git a/content/2023/rspec-options.md b/content/2023/rspec-options.md @@ -0,0 +1,21 @@ +--- +title: "Specimen control with RSpec's options" +category: "software" +abstract: RSpec got some cool options for setting what we will test +date: 2023-03-31T22:54:50+02:00 +year: 2023 +draft: false +tags: +- Ruby +- RSpec +- Engineering +--- +Did you know that you can control which tests are run using RSpec's runner options? There are a few options I use every day: + +- `--seed=` - random order of tests is done by generating a random number, a seed. You can force given order by passing in [seed value](https://rubydoc.info/github/rspec/rspec-core/RSpec%2FCore%2FConfiguration:seed). Great for repeating order from CI! +- `--only-failures` - only tests that failed in the previous run will be run. +- `--fail-fast` - stop run after first encountering failure. + +Today I also learned about `--bisect`, which, in a flaky suite, will find the minimal set of tests that will fail the suite. Magic! + +You can find a lot more of such options on [Github](https://github.com/rspec/rspec-core/tree/main/features/command_line).