Title: Remote Agent for Conformance Testing of TimedAutomata
1Remote Agent for Conformance Testing of
Timed-Automata
- Ariel Stulman stulman_at_jct.ac.il
- Simon Bloch simon.bloch_at_univ-reims.fr
- H.G. Mendelbaum mendel_at_jct.ac.il
2Introduction
- Conformance testing is a test intended to check
that an IUT (Implementation Under Test) adheres
to specifications (what you see is really what
you get). - Finding a conformance sequence and running a
conformance test is a well known, fully-solved
problem. - (see Kohavis book Switching and Finite
Automata Theory)
3Introduction
- Conformance testing is normally conducted on an
un-timed, locally situated IUT. - A timed-IUT is a Mealy machine with timing
constraints added on its state transfer function.
4Description of Problem
- The controllability problem is defined as the
task of guaranteeing the the IUT receives the
testers inputs in the same order that they were
sent. - The observability problem is defined as the task
of identifying which output is the response to
which input matching output to input.
5Description of Problem
- With locally placed IUT the controllability and
observability problem dont exist (transfer times
are assumed instant). - Using a remote environment where transfer times
not instantaneous, intensifies problems.
6Description of Problem
- With an un-timed IUT, solutions are readily
available. - Using a timed-IUT (timing of the inputs critical)
increases the severity of the problems (transfer
times may vary).
7Description of Problem
Observability problem in remote environment
?k1
?k
e response?
ob
Observability Problem in remote environment (is
ob the response to ?k or was there a silent
response (e) to ?k, and ob is the response to
?k1 ?)
8Proposed Solution
- Conformance testing is composed of three distinct
stages - generation of the testing sequence.
- conduction of the test (input stimuli and record
t-IUTs response). - comparison of actual, recorded results with
expected output thus, reaching a verdict.
9Proposed Solution
- Our solution is based on the fact that these
three stages are distinct thus, they can be
conducted in separate locations. - One should generate a testing sequence at a
remote location, send it to a local agent (remote
to the tester), log the results and send them
back for processing.
10Proposed Solution
- Using the OSI model for information transfer over
a network, guarantees the arrival of the agent
and testing sequence in correct form. - Since local testing assumes instant transfer
times, both the controllability and observabiliy
problems were solved.
11Proposed Solution
proposed solution (semi-local testing)
tc
ok
instant transfer time
Agent
Time
t-IUT
?k1
?k
Semi-local testing assuming instant transfer
times between local testing agent and t-IUT
(constraints (tc) placed only on timing between
inputs)
12Algorithm for testing agent
procedure testing_agent_layer begin receive
s // based on OSI reset
iut_clock //resets t-IUTs clock reset
agent_clock // resets testing agents clock
while (iltn) // s n begin while(
(tk ? sk) - (tk-1 ? sk-1) ? agent_clock)
wait input( ?k ? sk ) if (output)
log( ?k ? T output ) else log( ?k ? T e
) reset (agent_clock) end while
// on s inputs send( T ) // based on
OSI end procedure
13Closing Remarks
- We proposed a method for conducting conformance
testing of timed-IUTs over a network. - The method presented will always overcome
possible controllability and observability
problems induced by the network.
14Closing Remarks
- The relevance of our algorithm is mainly for the
field of testing real-time machines in industry
where trade secrets prohibit the conduction of
the entire test in remote locations. - In the future, we hope to build a tool that will
allow for easy, automated remote tesing.
15THANK YOU