It is much preferable to keep the tests isolated so that one test does not depend on a computation performed in another. Let’s call the test that should pass a value test A and the test that should get it test B. Some question to consider:
-
Are test A and test B really two different tests? If not, they could be combined.
-
Is test A meant to provide test B with a fixture to test against? If so, test A should become the callback for a
before
orbeforeEach
call. You basically pass the data around by assigning it to variables in the closure ofdescribe
.describe('some test', function(){ var fixture; before(function(done){ fixture = ...; done(); }); it('do something', function(done){ fixture.blah(...); done(); }); });
I’ve read Mocha’s code, and provided I’m not forgetting something, there is no way to call describe
, it
, or the done
callback to pass values around. So the method above is it.