VoiceXML
Conformance Testing
Continued from page 1...
Platform Testing Architecture
To
run the test suite manually, a human tester calls into
a VoiceXML platform (the System Under Test, or SUT)
that is preconfigured to execute tests fetched from
the test suite server as shown in Figure 1.

Figure 1. Manual VoiceXML testing architecture
Since there are over 700 tests, running all the tests
could become time consuming. To automate the process,
an Automated Test Driver System (ATDS, possibly a VoiceXML
platform itself) replaces the human tester by placing
calls to the SUT. The ATDS "talks" with the
SUT via audio and DTMF prompts and commands. Results
are automatically logged by the testing system.

Figure
2. Automated VoiceXML testing architecture
The
test driver employs a very simple architecture to minimize
testing system complexity. By using simple predefined
inputs and outputs, the ATDS can be developed with any
common IVR testing systems or VoiceXML.
The
Conformance Test Suite Development Process
The Conformance Committee is following essentially the
same process used by the W3C Voice Browser Working group
for developing the original implementation report test
suite. Testable assertions are derived from the VoiceXML
specification by methodically going through the text
of the specification, section by section. These assertions
are brief but reasonably precise English statements
that describe a particular aspect of the language. For
example, the following assertion (#362) was derived
from section 3.1.6.1 in the VoiceXML 2.0 Candidate Recommendation:
"If
a form-level grammar matches and returns a semantic
interpretation for a field name or slot that is a non-scalar
ECMAScript variable, the field will be filled with that
non-scalar ECMAScript value. The selected property may
be a compound object."
Next, the committee proceeds to review the assertion,
ensuring that the assertion does in fact reflect the
intent of the specification. Once the assertion is approved,
a formal test script that exercises the behavior described
by the assertion is authored. The test script implementations
themselves are reviewed before they are added to the
conformance test suite.
The committee's intent in the months ahead is to evolve
and refine the set of assertions and associated test
cases until it reaches a point where there is a reasonably
high assurance of interoperability among the implementations
that successfully pass the entire test suite. Periodic
releases of our work in progress will be made available
for download for VoiceXML Forum member companies in
the members-only area of voicexml.org, and a public
online version available to the general public. While
we have not yet at the time of writing added any new
extensions to the original W3C IR test suite, we have
made a number of corrections to the test scripts that
were reported in the W3C VBWG mailing list. These updates
are reflected in the current "pre-release"
download in the members-only area of voicexml.org.
The Conformance Test Script Language
The test script language (thanks to the Herculean efforts
of Matt Oshry of Tellme, and other colleagues in the
VBWG) is key in creating a highly flexible test suite.
The language is essentially a superset of VoiceXML that
introduces a dozen or so additional test-related elements
via a separate XML namespace. Test scripts are transformed
into pure VoiceXML by running them through an XSLT processor
with the appropriate XSLT style sheet. This allows one
to configure the test suite for a variety of different
test configurations without having to rewrite the individual
conformance tests themselves. There are a number of
advantages to this. First, conformance testing in languages
other than English can be accomplished by modifying
the style sheet and regenerating the target VoiceXML
scripts. Second, the test suite can be easily modified
to account for differences in the test execution configuration
such as an automated test environment vs. a manual test
environment. Finally, while the VBWG is making progress
in the semantic interpretation area, there are still
a number of differences in commercial speech resources
in terms of how semantic processing is specified. The
differences in this area can be handled in style sheets
rather than in each individual test. This problem will
be discussed in more detail below.
An example test script for assertion #362 (cited above)
and the resulting VoiceXML markup is shown below. The
reader is referred to the
W3C VoiceXML Implementation
Report for more details on the test script language.
Continued...

back
to the top

Copyright
© 2001-2003 VoiceXML Forum. All rights reserved.
The VoiceXML Forum is a program of the
IEEE
Industry Standards and Technology Organization
(IEEE-ISTO).
|