
December 1998
Call Generators: CTI Takes A Test
BY BILL GUNNING
Central office and PBX telephone switch manufacturers typically rely on call generators
to simulate a variety of operating conditions - the better to ensure that their products
function correctly in all environments. Unfortunately, the same precaution is not always
taken by vendors of enhanced CTI applications. The all-too-common results of inadequate
application testing? CTI systems freeze-up, anticipated benefits never appear, revenue and
productivity suffer, and customer service deteriorates. It comes down to this: No matter
how well systems may operate on their own, and regardless of a vendor's claim about
compatibility, unless complete systems are tested under real-life or simulated conditions,
actual performance cannot be guaranteed.
Yet avoiding the above problems and ensuring that investments perform as expected is
fairly simple. All CTI application buyers have to do is insist that the systems under
consideration be tested completely in environments similar to their own. However, many CTI
vendors contend that this is unnecessary because their applications rely on standard
telephony interfaces - such as those from Dialogic
and Natural MicroSystems - that have already been
thoroughly tested.
THIS IS REAL LIFE
If a vendor takes this position, it should serve as a warning to an astute CTI shopper
rather than a satisfactory response. Just because a telephony interface has been
thoroughly tested, this does not necessarily mean that a complex CTI application running
with this interface will perform as required. This can only be ensured by testing the CTI
application itself, under load, and in an actual busy-hour calling scenario.
Developers and buyers of CTI applications need to understand that a complex application
can significantly impact the way CTI platforms operate under a wide variety of call
scenarios and transaction types. Each separate function in a voice mail system, for
example, may work fine when tested independently. But when multiple functions are utilized
simultaneously, as they are in real-life situations, the overall system may not respond
appropriately and a variety of error conditions may be encountered: calls may be routed to
the wrong extensions, unacceptable delays may occur, or wrong prompts may be launched.
Since CTI applications tend to be business critical, it makes far more sense to test them
with a call generator prior to deployment, rather than waiting to see what happens once
the applications are live.
SIMULATION TESTING
With this in mind, there are several types of testing that a CTI product should go through
before final deployment.
Conformance Testing
Call generators put the entire network through its paces by simulating actual user calls,
including all possible interactions with the CTI application. This can only be done with
call generators that are able to vary all parameters of DTMF dialing, including level,
frequency, on-and-off timing, and twist.
In this way, all real calling scenarios can be simulated - even, for example, if calls
are received from foreign countries where, rather than touchtone telephones, it is common
to use hand-held DTMF dialers in conjunction with rotary dial phones. Equally important,
the call generator must test all possible end user responses to prompts by simulating both
the buttons callers would press and the different sequences in which they might press
them.
Thorough testing also requires that the call generator be able to simulate different
interfaces. In fact, in complex scenarios, multiple call generators may be needed for each
separate interface that will be encountered (including analog, various types of ISDN, T1,
and E1).
This type of call generation testing is called conformance testing. All the parameters
evaluated during conformance testing should be reported on and carefully evaluated to
determine any problems before the application is fully deployed. In fact, complete
conformance test simulation of the actual workflow of a call - from the point that a
caller attempts to reach the network, right through to the point where they get the
information they need - is an invaluable first step in determining if the CTI system will
meet a company's expectations.
Load Testing
The next step in evaluating a CTI application should be considering its performance during
load testing. Similar to the basic load tests performed on telephone switches,
CTI-oriented load tests must go one step further than standard switch tests. CTI load
testing is done by simulating the parameters considered in the conformance tests, but
testing under varying load conditions: from large numbers of short duration and simple
calls, to long and complex call interactions. Such rigorous load tests fully exercise the
system in real-world conditions, which is absolutely essential to ensure success when
applications are brought live on the network.
Regression Testing
Conformance and load tests are critical when considering a new product. Another type of
testing is equally important before committing to a new release of an existing product.
This is called regression testing.
In regression testing, call generators are used to create a nominal amount of highly
variable and complex traffic to simulate every possible path and decision a user could
make. This test is run initially with the new release. Regression test parameters are then
run against the original load test conditions - the previous version of the product - to
ensure that the new release will yield predictable results in all scenarios.
For example, take the case of a new version of a CTI application that now includes
support for international call back. Once tests are completed that verify how the new
release performs, these tests need to be run again on the original product test bed to
ensure backwards compatibility. Similarly, if a new version of an existing application
adds new prompts for end-users, buyers of that new version need to completely understand
how these new prompts will affect the application's overall performance. This includes
accommodating, or allowing for in some capacity, the earlier prompts that end users are
already accustomed to.
Taken in conjunction with conformance and load tests, complete reports from regression
tests can provide valuable assistance to both vendors and users of CTI applications in
determining how to resolve issues that may arise as they develop their CTI environment.
Acceptance Testing
There is still one final class of test that needs to be considered before making a
commitment to a CTI solution: acceptance testing. Acceptance tests address the specific
performance requirements checklist, agreed to by the vendor and purchaser, that stipulates
exactly how the product should perform in the purchaser's specific environment. If
specific signaling protocols must be supported, for example, this must be proved in an
acceptance test.
The importance of acceptance testing cannot be overstated. It is also important to note
that for a CTI implementation to be successful, it is the responsibility of the purchaser
to provide the vendor with such a checklist, so the vendor can completely prove that the
CTI application will meet expectations.
CALL TESTING EQUIPMENT
Where it is the responsibility of the buyer to provide a checklist for the vendor to
complete, the vendor will generally be responsible for providing the appropriate call
testing equipment. To facilitate the completion of all tests, call generators should be
completely open so that the user can rely on either standard, or custom developed,
protocol state machines for generating test signals. If custom protocols, such as those
that might be common in a specific foreign country, must be tested, be sure the call
generator system includes a development kit to streamline this task.
Actual testing of call flow also requires simulation scripts that specify the various
actions a user would take when making a call. Two types of scripting capabilities should
be offered by the call generation system: pre-programmed and custom. Custom scripts, most
often required when tests are tailored to specific operating conditions, can be
facilitated with a call generation solution that includes software tools that automate
this task. Some call generators, for example, provide a full graphic scripting tool that
requires no knowledge of programming whatsoever; by simply dragging and dropping icons and
interconnecting them with mouse clicks, even complex scripts can be easily assembled.
Another important capability of call generators that must be considered by CTI vendors,
and companies who rely on test results for evaluating products, is the size of application
that can be evaluated. Call generators that include control tools are generally most
effective for large test scenarios, since they allow multiple, distributed environments to
be tested concurrently and effectively.
FINAL SUGGESTIONS
Call generation-based testing of CTI applications is an invaluable tool that all users of
CTI systems should utilize if their investments are to be successful. In fact, we suggest
that CTI purchasers insist that these tests be performed before they consider products
from any vendor. Even large companies that may choose to do their own testing at a later
date will benefit by dealing with vendors who have completely validated the performance of
their products through call generation testing.
As CTI applications play an increasingly important role in the success of companies,
and as these applications become increasingly complex, the importance of complete testing
cannot be overstated. Today's CTI environments are used by more and more callers, and are
interfacing with more and more networked applications. By extension, this means that the
number of points of failure is skyrocketing. By validating CTI applications with thorough
testing before deployment, unpleasant surprises can be avoided - and companies can be sure
that they'll get what they pay for.
Bill Gunning is the senior vice president of corporate marketing for Ameritec
Corporation. Ameritec is a leading manufacturer of test equipment for the
telecommunications, data communications, and wireless markets. Ameritec supplies equipment
to telecom equipment manufacturers, telephone service providers, and private businesses.
For more information, please contact the company at 626-915-5441, or visit their Web site
at www.ameritec.com. |