I've stopped using `before` and `let` some time ago. Purely because of this: https://github.com/thoughtbot/guides/tree/master/best-practices#testing

From beginning I did not know how to replace it, but now I create my own methods to prepare objects for me. So unlike in `before` block I call them just when I need them. And unlike the `let`, I can pass arguments to it... So in your case you can do something like:

```
describe SudokuBoard do
  ... your tests ...

  def game_vc
    SudokuBoard.new("valid_complete.sudoku")
  end

  def game_ii
    SudokuBoard.new("invalid_incomplete.sudoku")
  end
end

And then you just call `game_vc` instead of `@game_vc` which doesn't looks right to me.

Anyway this is just something what I made up from different codes and probably also thoughtbot TDD workshop (I really do not remember).

And I would also like to see different opinion on this.