I’ve been working with TestComplete for several years now, on various projects. Many times, I’m tasked with bringing new testers up to speed on this automation tool. Here are a few tips for getting started with TestComplete that I’ve given to our new folks for reference.
TestComplete is a very powerful tool for a wide range of application types and technologies, including Windows, .NET, WPF, Visual C++, Visual Basic, Delphi, C++ Builder, Java and Web applications and services. When getting started, here are some things to keep in mind:
- The application type (desktop, web or mobile) that you’re working with. Depending on your tested applications and test scenarios, you will need to install TestComplete and one or more modules to cover the related application technologies. The Desktop, Web and Mobile modules give your tests access to internal objects, methods and properties of the appropriate tested applications, as well as provide specific support for application windows and controls. This allows you to create powerful and flexible tests, so make sure you have the modules installed that you need.
- The skills of your test engineers. Because TestComplete supports keyword driven recording and scripting, you need to consider not only what your aptitude is for doing scripts, but how to have testers with different skills working on the same project. Recording is easy but won’t be very scalable or maintainable. On the other hand, using keywords, while easy, also has limitations. This all has an impact on how you will go from one script to many and how to organize them for multiple project team members to contribute to the same project.
Once you’ve got those things figured out, three main tips I give to our newbies getting started with TestComplete are:
- Use the help system: If you are new to TestComplete, it’s good practice to utilize the help system. It offers great help and examples on all of the main features, different test types, the applications it supports, and instructions on how to create your first project. Even if you are already skilled in TestComplete, you can see any new features of the tool or features you haven’t used yet and use the help system as a reference manual. In addition to the help system, I also get information from forums and SmartBear’s support team.
- Avoid computer specific settings: Since I’ve started using TestComplete, I’ve come across errors that have nothing to do with the project or tested application. For example, we have a local workstation and another workstation on our client’s side. One time, the project was just fine locally, but our client kept receiving errors. The problem? The decimal symbol in the computer settings was different between our computers and the client’s. If you have workstations at different computers, confirm that all computer settings are the same, otherwise you’ll do scripts locally that can’t run on their computers.
- About Name Mapping: Each test project has a Name Mapping repository. It contains all the objects of your application that are used in your automated tests. TestComplete uses the information stored in the repository to identify the objects during test runs. When you run tests, TestComplete uses the information from the Name Mapping repository to find objects in your tested application. Make sure that you use unique and unchangeable properties for object identification. Otherwise, TestComplete may not be able to find an object when the properties have changed, or you’ll end up with several objects with these property values. In this case, you need to update the mapping criteria to avoid maintenance problems later on.
My team and I also refer regularly to our test automation best practices for general guidance on test automation outside of specific TestComplete issues. This blog is just to help our newbies in getting started with TestComplete. Of course, once you get started using the tool, there are many more issues and problems with writing detailed scripts, especially when writing with multiple team members in a coordinated fashion so that all the scripts are easily maintained with general coding and test automation best practices. Hopefully you can find this guide useful!