Test Complete - Introduction
In line with TestingGeek’s philosophy of Learn Share and Keep Learning, this section will share information related to TestComplete with you. This article would be the first in the ‘TestComplete’ series of articles on TestingGeek. This part will give you an overview of TestComplete, its features and enough information to get you started with the tool. If you are already an experienced user of TestComplete, you might want to suggest some more topics in this series. Alternatively, you can also post your article in this series.
For beginners, you will find this article good enough to get you started. TestComplete is an automation tool provided by AutomatedQA for testing Win32 and .NET applications. It provides extended support for testing Web applications and applications created in Microsoft Visual C++, Visual Basic, Borland Delphi, C++ Builder, Java and .NET development tools.
TestComplete comes in two editions
Standard Edition This edition contains all the basic features needed to start Automation. Apart from this, Plug-ins for Data Driven Testing, Object Driven Testing etc are also included in this edition.
Enterprise Edition This edition contains additional features for Load testing, TestExecute, TestRecorder etc.
For ease of understanding, this article is divided into four sections:
- Project Organization – This section deals with the information on how projects are organized in TestComplete.
- Working with TestComplete – What kind of scripting languages are supported, what kinds of features are available in the editor and special objects provided by the tools are discussed here.
- Testing Support – Notion of connected application and open application is discussed in this section.
- Steps to get started – Simple steps to start with the automation using TestComplete are explained in this section.
Project Organization By this we mean how projects are created in TestComplete? What are the default components of the Project? etc. A Project is a very important part of TestComplete. It reflects your automation approach and how you want to organize your scripts. You may have one project for entire application if the application is small or separate projects for different components of a complex application and combine all of them into one Project Suite. In either case a project will contain all the information about your application under test. Scripting language used in the project is also defined while creating the project.
TestComplete gives you freedom to choose the scripting language of your choice. You can choose from a wide range of languages like VB Script, Java Script, C# etc. There are different components of a project like Scripts, ODT, ActiveX, Stores, Events etc. On your file system, a TestComplete Project is created as .mds file and a Project suite as a .pjs. The Project File (.mds) stores the number and names of project items, test item settings, the scripting language and other information in XML format which is relevant to the project. Every Project will have a list of ‘Tested Applications’ which are nothing but the executables of the applications which you are automating in your project. This list of tested application can be accessed by the TestApps object in your scripts. This will become more clear in the get started section.
Working with TestComplete Working in TestComplete is fun… As mentioned earlier, It supports different languages like VBScript, JScript, DelphiScript, C++ and C#. For applications written in Delphi, TestComplete is one of the best tools. TestComplete Code Editor also provides features like runtime syntax checking, code parameters checking and code navigation apart from other things. These features become very handy during development and maintenance of automation scripts. TestComplete also provides slpacker object, which contains methods for compressing the results of your test runs. You will explore more interesting features like this, once you start working on it.
Testing Support
Well we are not talking about the customer support but different types of applications TestComplete support and how it accomplishes that. TestComplete supports two types of applications, Open Applications and Connected applications. This concept of open application gives TestComplete an edge above other tools, especially for Delphi Applications. Let us take a brief intro about the two types:
- Connected Application: Entire TestComplete engine is an OLE server and exposes its functionality through a set of COM interfaces. Even the test complete GUI is an application which uses TestComplete engine to execute automated scripts. On the same lines, your application can also be connected directly to this TestComplete’s OLE server. In simple words connected applications use the TestComplete engine to execute the test scripts as they are executed in TestComplete itself. Now the million dollar question why do we need connected applications? We need it when we want more control over our testing. For example you can create your own Delphi application with specific dialogs for accepting user input or check certain dll’s. You can also use this feature for unit testing your application.
- Open Application: Another important pillar of TestComplete is the concept of open applications. According to AutomatedQA ‘Open Applications are applications instrumented for white-box testing under TestComplete.’ In Open Applications the different published properties of the controls of your application are can be accessed externally, i.e in your automation scripts. This makes life of testers easy as they can make use of certain properties of the objects from your application, which could be difficult to access from closed application. For example, you can use Grid Controls used in Delphi application from open application and iterate through the items present in grid. You can choose between making entire application open or expose only certain controls as open according to the project requirement.
Do you like this post?
Subscribe to receive new posts via RSS or email. Join!

