|
|
![]() |
Automated Test Recording and Playback
TestComplete includes a powerful point-and-click automated test recorder that helps you create tests quickly and easily. You just work with the application under test - select menu items, type text, choose values from combo boxes, press buttons - and TestComplete records all your actions as automated test commands.
You can play back a recorded automated test "as is" or modify it with special editors to be included in your automated testing tasks.
Recorded Automated Test Types
The actions performed on tested applications can be recorded in the form
of:
You choose the automated test type from the Recording toolbar.
Keyword tests are recorded as a sequence of operations that
simulate user actions on the tested application. The benefit of these
automated tests is that in many cases it is easier and faster to create them
than to write script code for the same automated test. Also, to create
keyword tests you do not have to know scripting languages, thus, keyword
tests are perfect when you need to create quick, simple, automated tests.
Scripts allow you to implement complex automated tests. TestComplete can record user actions as scripting instructions on VBScript, JScript, DelphiScript, C++Script or C#Script. The recorded automated tests often end up looking a lot like the source code of the application under test. That helps testers better understand your applications and improves communication with developers.
While recording a keyword test or a script routine, TestComplete records the key actions necessary to replay the automated test and discards all unneeded actions. This makes the automated tests compact and easy to read. Besides, removing delays between events speeds up the automated test playing back.
However, there are times when you need to record everything, this is when
low-level recordings are used.
Low-level procedures are special project elements that
record mouse clicks, keyboard events, mouse motions and mouse wheel events
as well as the pauses between the events. Since the recorder tracks all
pauses, low-level procedures will play back at the same speed as they were
recorded. Low-level procedures are useful when an exact simulation of mouse
and keyboard events is needed.
Load testing represent a sequence of HTTP requests to be sent to a
web server when performing load testing, stress
testing or scalability testing. When recording these tasks, TestComplete
tracks the HTTP, HTTPS and SOAP requests sent from the current computer to
web servers. Later these requests can be modified and duplicated in order to
simulate multiple users.
Object-Based Recording for Automated Tests
TestComplete's automated tests use the object-based approach that makes
them resistant to possible changes in the
application under test or testing conditions. Older automated test
recorders captured simple screen coordinate based actions, for example, a
mouse click at point X=245, Y=350. Unlike other automated testing tools,
TestComplete works at the object level. This means that when TestComplete
captures user actions over an application, it records more than just mouse
clicks, it reads the object name and properties from the application and
records the actions of the object: selection, string input,
checking/unchecking and much more. TestComplete can see the object names
inside the application under test, so it creates automated tests that
address those objects. If possible, TestComplete also uses the same names of
the windows and controls that were assigned by the developers. For instance,
instead of
Click(245,350), TestComplete's automated tests look more like,
MyForm.btnOK.ClickButton().
That’s
because TestComplete records object-based actions instead of coordinate
based actions, its tests are more stable and are harder to break
than other automated tests from various other automated testing tools.
Automated tests that are coordinate based usually fail when the
application’s interface changes. TestComplete’s object based automated tests
still work after changes like moving, adding or resizing controls.
TestComplete recognizes the most common UI library objects for your development platform like .NET, WPF (XAML), Java, MFC, ATL, VCL, Qt, and many more. And it’s not limited to common library objects, it can recognize even the most application-specific elements.
