I did this with specify and node tap several times and for several projects

To my knowledge there's no solution that completely solves all of this

Nuno

On Wednesday, December 11, 2013, Darren DeRidder wrote:

> We do something similar just using Mocha to test an Express.js API server.
> I wrote a little overview here:
> http://51elliot.blogspot.com/2013/08/testing-expressjs-rest-api-with-mocha.html
>
> I had a lot of end-to-end functional tests initially with dependencies
> between test cases. i.e. test 2 depends on test 1 completing successfully.
> The dependency problems became apparent pretty quickly. In theory, you
> should be able to run a single test case from a single test suite, in
> isolation (using the "grep" command in mocha). Of course this means all the
> set-up and tear-down needs to be done on a case-by-case basis. For every
> test step in your sequence, you have to write some before and after
> scaffolding to set up the preconditions. I made reasonable progress towards
> test-case independence by putting a collection of setup and tear-down
> functions in a separate module, and calling them with test data from a json
> file. Now, for the parts that need to be tested individually, it's possible.
>
> With test cases involving stateful operations, it was hard to stub things
> out fully. I only know of one utility that's capable of stubbing across
> modules (npm info gently).
>
> hope that helps.
>
> On Friday, November 15, 2013 5:53:50 AM UTC-5, Alex Kocharin wrote:
>>
>>
>> I want to test an api server, and I have a bunch of scenarios, for
>> example:
>> "start server with config1" -> "create user1 on server" -> "create
>> object1 under user1" -> "delete object1" -> "delete user1" -> "shutdown
>> server"
>> "start server with config1" -> "create user1 on server" -> "create
>> object2 under user1" -> "delete object2" -> "delete user1" -> "shutdown
>> server"
>>
>> With a bunch of asserts after every step. In the example above two
>> scenarios starts the same, but start to differ later.
>>
>> 1) Normally, I want to run whole test suite as fast as possible. So
>> ideally each step would be executed only once. If I just run all of them
>> independently, every scenario would launch server itself, and it would be
>> suboptimal.
>> 2) In case of errors, I want to run a single scenario independently. If I
>> just merge all of them manually to one long sequence of tests, I won't be
>> able to do this.
>>
>> So ideally I'm looking for a program that would transform all these
>> scenarios to one honouring all the dependencies of each step.
>>
>> Does something like this exist out there? What should I look for?
>>
>  --
> --
> Job Board: http://jobs.nodejs.org/
> Posting guidelines:
> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
> You received this message because you are subscribed to the Google
> Groups "nodejs" group.
> To post to this group, send email to 
> [email protected]<javascript:_e({}, 'cvml', '[email protected]');>
> To unsubscribe from this group, send email to
> [email protected] <javascript:_e({}, 'cvml',
> 'nodejs%[email protected]');>
> For more options, visit this group at
> http://groups.google.com/group/nodejs?hl=en?hl=en
>
> ---
> You received this message because you are subscribed to the Google Groups
> "nodejs" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected] <javascript:_e({}, 'cvml',
> 'nodejs%[email protected]');>.
> For more options, visit https://groups.google.com/groups/opt_out.
>

-- 
-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en

--- 
You received this message because you are subscribed to the Google Groups 
"nodejs" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to