comp.lang.ada
 help / color / mirror / Atom feed
From: Niklas Holsti <nobody@nowhere.fi>
Subject: Re: testing with Ravenscar task
Date: Sun, 10 Oct 2004 21:25:09 +0300
Date: 2004-10-10T21:25:09+03:00	[thread overview]
Message-ID: <41697E85.5040306@nowhere.fi> (raw)
In-Reply-To: 41686531$0$6159$626a14ce@news.free.fr

Lionel Draghi wrote:
> Niklas Holsti wrote:
> ...
> 
>> Ravenscar task bodies (at least those with just one suspension point) 
>> can usually be made very simple by putting the real computation in a 
>> procedure defined outside the task. This procedure can be unit-tested 
>> in the normal way.
> 
> I agree with you, Niklas.
> But what if I want to do some integration tests?
> Switching directly from unit tests stricto sensu to tests on the whole 
> executable may be a big step.

If by integration test you mean putting together some, but not all, 
modules of the program, and checking that they work together, then one 
way to do that is to make the test driver (the main procedure for the 
integration test) call those "computational" procedures for each task, 
one by one, in the order they would (or should) be called by the actual 
tasks in the tested scenario. You would again omit to "with" the actual 
tasks so that the test driver is totally in charge. Of course this does 
not give the true timing, but the test instrumentation clobbers timing 
anyway.

If you have a large program with lots of tasks, this approach gets 
cumbersome in the later stages of a bottom-up integration process as the 
test driver becomes very large. To solve that one could "with" the tasks 
for the modules that have been tested, considering these modules as 
trusted black boxes with autonomous activity, while still driving the 
new modules-under-test from the test driver. Of course this brings back 
the problems with task termination and gcov output.

--
Niklas Holsti
Tidorum Ltd

niklas holsti tidorum fi
       .      @       .




  reply	other threads:[~2004-10-10 18:25 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-10-08 22:27 testing with Ravenscar task Lionel Draghi
2004-10-08 23:00 ` Ed Falis
2004-10-09 22:23   ` Lionel Draghi
2004-10-09 19:38 ` Niklas Holsti
2004-10-09 22:25   ` Lionel Draghi
2004-10-10 18:25     ` Niklas Holsti [this message]
2004-10-10  2:01 ` bh
2004-10-11 22:25   ` Lionel Draghi
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox