Loading in 2 Seconds...

Testing Transition Systems with Input and Output Testers

Loading in 2 Seconds...

- By
**zenia** - Follow User

- 144 Views
- Uploaded on

Download Presentation
## PowerPoint Slideshow about 'Testing Transition Systems with Input and Output Testers' - zenia

**An Image/Link below is provided (as is) to download presentation**

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript

### Testing Transition Systems with Input and Output Testers

Alexandre Petrenko Nina Yevtushenko

Jia Le Huo

TestCom’03, May 27th, 2003

Outline

- Motivation
- Basic idea
- Testing frameworks
- Queued-quiescence
- Queued-suspension
- Conclusions

?coin

?coin

?coin

!milk

coin

!coffee

?coin

?coin

coffee,

milk

Spec

Input/Output Transition Systems- Non-deterministic IOTS: model of Spec and Imp
- Output of IOTS cannot be blocked: basic assumption
- Spec and Imp are input-enabled

coin

coin

coffee

pass

milk, coffee

milk,

fail

fail

Motivating Example?coin

?coin

!coffee

?coin

?coin

?coin

!milk

!milk

!coffee

?coin

?coin

!coffee

?coin

?coin

?coin

Spec

Imp

Quiescent trace coin coin coffee milk yields the ioco test case:

Is the test case still sound if output of Spec cannot be blocked?

How can I

block a coffee

on its way out?

Contradiction- The ioco test case blocks coffee after coin
- Output of IOTS cannot be blocked: basic assumption

Problem Statement

- A tester not blocking output of Imp must be input-enabled
- An input-enabled tester usually
- has unbounded test runs
- makes choice between input and output
- Both features are not desirable in practice
- We have to define a tester that
- is input-enabled
- reaches verdict in finite steps
- never chooses between input and output

executes a given input sequence

finite capacity for practical reasons

Input test

process

Input-enabled, and no choice between input and output

Input queue

Output test

process

Output queue

produces pass when an expected output sequence followed by quiescence is read from the queue and fail otherwise

Basic IdeaTester

Imp

!coffee

!coffee

!milk

!milk

Qqtraceso(Imp, )

Qqtraceso(Spec, )

Queued-Quiescent Traces!coffee

?coin

?coin

?coin

?coin

?coin

!milk

!milk

!coffee

?coin

!coffee

?coin

Imp

Spec

?coin

?coin

?coin

- For a quiescent trace of Spec, I O Qqtraces(Spec)
- For input sequence ,Qqtraceso(Spec,) includes all the output sequences in response to : {' O* | ' Qqtraces(Spec)}
- Qqtraces(Spec) = Qqtraces(Imp) (qq-trace equivalent)

Queued-Quiescence Relations

- For non-oscillating Spec and Imp, if input sequence exists such that :
- Qqtraceso(Imp,) Qqtraceso(Spec,) = (no pass)then Imp is qq-separable from Spec
- Qqtraceso(Imp,) Qqtraceso(Spec,) (fail, pass) then Imp is qq-distinguishable from Spec
- Qqtraceso(Imp,) Qqtraceso(Spec,) (no fail)then Imp is qq-weakly-distinguishable from Spec
- qq-separable qq-distinguishable qq-weakly-distinguishable

Test Derivation with Fault Model

- Given Spec and Imp, check input sequences of length 0, 1, 2, … until a sequence is found such that
- qq-separates, or
- qq-distinguishes, or
- qq-weakly-distinguishesImp from Spec, or
- the input buffer capacity k is reached
- Repeat for all Imp
- k = ?

?milk

pass

?milk, ?coffee

!coin

fail

fail

?milk, ?coffee,

?milk, ?coffee,

A Finer Tester?coin

?coin

!coffee

?coin

?coin

?coin

!milk

!milk

!coffee

?coin

?coin

!coffee

?coin

?coin

?coin

Spec

Imp

The resulting IOTS can be distinguished by a qq-test case:

After executing the qq-test case with input coin on Spec and Imp

qq-test case of Spec-after-(1, 11)

qq-test case ofSpec-after-(1, 12)

12

11

2

2

25

21

22

23

24

3

3

3

3

3

...

...

Queued-Suspension Testingqq-test case of Spec

1

qs traces are sequences of qq traces executed by the qq testers: (11i)(22j)...(nnk)

Conclusions

- Outputs cannot be blocked: basic assumption
- Testing frameworks: qq and qs
- Comparison with the ioco framework:
- information of Interleaving of inputs and ouputs are lost
- so the conformance relations are coarser than ioco
- but ioco testing is not applicable here
- Open questions: oscillating Spec, k = ?, etc

?coin

?coin

?coin

!milk

!coffee

?coin

?coin

Spec

?coin

!coffee

?coin

!milk

!coffee

?coin

!milk

An Examplecoin coin

Output queue

(capacity 2)

Input queue

(capacity 2)

We have

coin

coin

coffee

coin

coin

coffee

pass

pass

milk, coffee

milk,

milk

fail

fail

fail

An example (Cntd.)When the ioco test case below is applied to Spec with queues

Is this test case still sound?

Download Presentation

Connecting to Server..