In an environment where software defects need to be found quickly and reliably,
TestComplete helps
ARUP Laboratories do just that. ARUP typically processes more than 25,000
specimens per day. The Expert Specimen Processing (ESP) Development Team in the
IT Department at ARUP is responsible for tracking patient specimens received for
testing. This tracking currently begins when the specimens arrive at ARUP and ends
when they are discarded. Production errors can impact patient care, so the ARUP
development teams are always in the market for tools that can help them find and
fix defects sooner rather than later.
ARUP and Automated Testing
"The driving force behind our decision to use automated testing was the need for
a repeatable, reliable, fast, non-intrusive, low-resource solution for the regression
testing of new releases of our ESP software. Because production errors can impact
patient care, it is critical that software defects be found and fixed early in the
development process," said Barbara Talley, the ESP Applications Development Supervisor
at ARUP Laboratories.
Choosing a Testing Solution
No software developer at ARUP had any first-hand experience with an automated testing
tool that was impressive enough to warrant a recommendation. "In searching on the
web for a profiler, AQtime was discovered, and from that point, further investigation
into AutomatedQA’s full suite of products identified TestComplete as a viable candidate
for the first step toward test automation in the development environment. There
were several requirements that TestComplete met," said Barbara. Barbara detailed
some key factors in choosing TestComplete:
Affordability
"Other automated testing applications cost thousands of dollars rather than a few
hundred dollars per license, and the others do not offer a substantial improvement
in features."
Delphi Compatibility
TestComplete supports several popular development platforms; Borland Delphi was
especially important to ARUP Labs. "All of ESP’s software applications are written
with the Borland Delphi IDE. It was essential that the automated tool we selected
specifically support our development environment. TestComplete can access the objects
in our applications and understand them as Delphi objects. Because objects referenced
in TestComplete scripts use the same names and properties as the application code,
scripts are easy to create and maintain. A specific advantage to this runtime support
of Delphi VCL objects is that we are able to direct both mouse clicks and key strokes
to specific window controls. We have made extensive use of the WaitWindow method,
which enables us to wait for activation of specific forms and dialogs."
"TestComplete scripts can be written in DelphiScript and since this is very similar
to Delphi, the learning curve of TestComplete is significantly reduced. The Delphi
skills of our developers are easily transferred to TestComplete with only minor
adjustments."
Intuitiveness
"Running scripts and reading the logs in TestComplete are intuitive for programmers.
Also, the capability of breaking sophisticated scripts into multiple files directly
correlates with the popular modular/incremental approach to software design/implementation."
Feature Set
"TestComplete has a robust and extensive feature set. Many of the features give
added power to testing efforts, i.e. object driven testing, unit tests, and low
level procedures. Despite the wide array of features, setting up a script to do
simple testing proved very easy using the Record option."
AQtime Integration
"We look forward to taking advantage of the interoperability between TestComplete
and AQtime. TestComplete will work with AQtime’s coverage profiler to show how complete
our test scripts are and where we need more testing coverage. Currently AQtime helps
us find bottlenecks in our most complex software application. While troubleshooting
performance issues, AQtime was used to find the parts of the code and stored procedures
that were the slowest. It turned out that the parts that were initially thought
to be the slowest were working at acceptable speeds. AQtime saved time and effort
by facilitating the fix of the actual bottlenecks. Without AQtime, changes would
have been made based on assumptions of the bottleneck locations."
Flexibility
"TestComplete is a powerful automated testing solution because you can use either
black or white box testing on an application, with white box testing accomplished
through use of the Open Application features. While our legacy ESP software was
not created with automated tests, or even with a clean separation of business logic,
data access, and user interface, TestComplete's black box testing features allowed
us to implement automated regression testing. The ability to customize the logging
output ensures that all error and progress messages can be presented in a manner
that is understandable."
Responsive Support
"One pleasant surprise we have experienced with TestComplete is the quality and
timeliness of customer support. A big fear about support is that, once the product
is purchased, support will become sporadic and low quality. With AutomatedQA, this
has not been the case. TestComplete and AQtime support has exceeded our expectations
since we purchased the product."
TestComplete Proves Invaluable
As ARUP strives to improve turnaround time for its clients, all of the software
development teams are constantly working to improve existing software and develop
new applications. "One such development effort required an application to implement
functionality that, while faster, had a direct correlation to its existing functionality.
One of the main requirements of this new functionality was that the outputs be identical
to the original functionality," said Barbara.
"TestComplete proved invaluable in this effort. It facilitated automating both processes
and the comparison of the output. Not only was TestComplete faster than manual testing,
it caught bugs that would not have been easily found, if ever, through manual testing."
Reducing Risks
"ESP’s most complex piece of software is responsible for associating a patient’s
test with the specimen submitted for the test, and for selecting a laboratory destination
for that specimen. This is a complicated process with many factors that affect the
output. Prior to acquiring TestComplete, development regression testing of this
application consisted of ordering random tests and verifying that the correct specimen
labels were printed and the routing occurred as expected. With TestComplete we have
been able to create a validated baseline file (saving all the significant data output
for an order) for many tests. When the time comes to release a new version of this
software, we can run the script and TestComplete will compare the results with the
baseline. If there is a difference, it will be logged as an error and the build
will be halted until the difference is understood and a new baseline is created
or the error is fixed," said Barbara.
"As we expand the number of tests and specimen combinations with baselines, this
functionality will allow us to reduce the risks involved in making changes to this
critical software application."
Saving Time and Boosting Productivity
ESP has many applications to assist in tracking specimens, storing specimens, retrieving
stored specimens, and discarding specimens once they no longer need to be accessible.
Several of these applications are heavily dependent on data that is set up by other
ESP applications.
"Prior to using TestComplete, setting up a test for any of these downstream applications
could take a considerable amount of a developer’s time, depending on the complexity
of the test. With TestComplete, we are able to set up almost any test for downstream
applications in well under an hour, with only about five minutes’ time required
from the developer to configure the TestComplete script. Many of these downstream
applications will eventually have their tests automated, which will save even more
time," said Barbara.
"Even for system testing that does not yet lend itself readily to automation, TestComplete
has been a boon to productivity, allowing us to generate hundreds of test data scenarios
that can then be utilized in manual testing activities."
Time is Money
Barbara said that time is money and expensive resources cannot be squandered. "Time
is money where expensive resources are concerned. Once a test case is written in
TestComplete, it can be run again and again, in significantly less time than it
takes to run the same test manually. This saves testing time that can be used elsewhere,
which ultimately is a cost saving. The spin-up time involved for putting TestComplete
into practice is minimal, and that in itself represents a cost savings over some
other tool that has a steeper learning curve."
Aiding Software Developers
"Time to market at ARUP means releasing the software into our production environment
within the company, since all of the ESP software at this point in time is used
within ARUP. Over the past few years, more emphasis has been placed on what we call
'Dev testing', which is testing by the software developers in the development environment
before the software is released to our certification environment for verification
and validation. The idea is to promote first-time quality and reduce the number
of cycles back and forth between the development and certification environments.
This, in turn, saves time and money by reducing the overhead of doing repeated releases.
TestComplete contributes to this effort by serving as an aid to the software developers
in their testing efforts," said Barbara.
Customizing Scripts in No Time
Barbara said that their approach to test cases has not been a linear process. "Rather
we have made many modular methods in TestComplete that are reused as needed. This
allows for a fairly customized script to be created in a short amount of time. Some
of these scripts are saved for regression testing, but most are created to immediately
test a specific functionality."
"We have recently purchased AutomatedQA’s TestExecute product in order to create
an automated build environment that will store and run our scripts in a central
location. This natural extension of TestComplete will add another beneficial dimension
to our automated testing efforts."
Looking Towards the Future
"We run tests on an 'as needed' basis, but our long-term plan is to have a core
set of test scripts for all of our software and an automated build environment that
tests changes as they are saved in our version control system. When we reach that
point, we will be running tests on a daily basis," said Barbara.
Immediate Benefits with Promise for the Future
"While the Record feature is mostly designed for beginners, it is a very basic feature
that offers huge returns. It creates a good starting point for any script – like
having a rough draft of your script created for you. Quite often, a tool appears
valuable until you start trying to integrate it into a process, and then it is abandoned
because of frustrations in getting started. TestComplete has resulted in immediate
benefits for the ESP Development Team, and promises even more advancement in productivity
and quality for the long-term," said Barbara.