This topic describes the changes made to TestComplete 12.4. For information on the changes made to other versions of the product, see Version History.
In version 12.4
TestComplete x64
Version 12.4 opens the TestComplete x64 era. From now on, we will release both the 32- and 64-bit versions of the product. The same concerns TestExecute.
TestComplete “bitness” does not affect the scope of supported applications: both the 32- and 64-bit TestComplete versions can test both 32- and 64-bit apps. If you use a 64-bit OS, you might want to switch to TestComplete x64. What will it give you? TestComplete x64, as a 64-bit application, takes advantage of all the benefits these applications have on 64-bit operating systems. One of them is larger address space, which enables the test engine to store larger data in the memory rather than to load them from a cache on the hard drive. This streamlines test creation and playback in general, and makes it possible to work with larger tests and test logs faster.
The TestComplete (and TestExecute) installation package includes both 32- and 64-bit modules. The installer copies 64-bit files to your computer automatically when you install or update TestComplete (or TestExecute) on a 64-bit Windows machine. 64-bit versions do not require any special license keys, so, your licenses remain functioning.
The TestComplete shortcuts that the installer places to your desktop or All Programs menu point to the 64-bit version of TestComplete. So, when you run TestComplete after the update, most likely you will run the 64-bit version. Be aware! Note also that all TestComplete subsystems use 64-bit versions by default. For example, when Network Suite distributed tests start a TestComplete or TestExecute instance on a remote computer, they will start the x64 version, if possible.
Important: Switching to the 64-bit version may require that you change your test environments and projects. For example, if your data-driven tests read data from Excel, .csv or other data files, the test engine is most likely using the Microsoft Access Database Engine driver. TestComplete x64 cannot use the 32-bit version of this driver. You will need to install the 64-bit version of the driver on test computers, where you are going to run the 64-bit version of TestComplete or TestExecute.
For more information on the 64-bit version and on how switching to it can affect your tests and test projects, see Differences Between TestComplete 64-bit and 32-bit.
Quick Checkpoints
Now, you can create property checkpoints during the test recording easier and faster. By default, TestComplete now highlights the control under the mouse pointer with a red frame and displays the icon. A click on this icon opens a menu with checkpoint suggestions:
The list is control-specific: TestComplete suggests checking the properties that are specific to the selected control type. The list also contains a few checkpoints you have recently created. When needed, you can promptly disable or enable this functionality. See Quick Checkpoints.
Smarter CrossBrowserTesting Integration
-
Easier connection to tested websites. Earlier, to make the tested website available to the CrossBrowserTesting machines, you had to make this site publicly available. Now, you can open local connections (encrypted tunnels between your local network and CrossBrowserTesting.com) directly from TestComplete by using the Local Connection wizard. These tunnels are similar to local connections that you create in the CrossBrowserTesting cloud. By using them, you can easily test local web pages or a website that is available in your network.
-
Support for external project items and arbitrary files. Earlier, the projects that you were going to run in the CrossBrowserTesting cloud could not contain external project items. Version 12.4 removes this limitation. Now, your test project can include external project items. TestComplete will copy them along with the project files to the cloud machine. Moreover, you can add test data files (like Excel workbooks or CSV files) to your project as project items, and TestComplete will copy them to the cloud, as well. This makes it much easier to prepare and run TestComplete web tests in the CrossBrowserTesting cloud. The only requirement is that these external project items and data files should reside on the same drive, where your project suite is located.
-
Easier data-driven testing. Cloud machines on which you run TestComplete tests now have the Microsoft Access Database Engine 2010 (ACE) driver installed. This means you can run data-driven tests that read data from Excel and CSV files through DB Table variables, and use the Data-Driven Loop operation or the
DDT.ExcelDriver
andDDT.CSVDriver
scripting objects to iterate through the data. -
Now, cloud machines also have Adobe Acrobat Reader DC installed. You can run tests that use this application.
Built-In Chats
To help trial users get started with the product faster and shorten the learning period, we added a new Chat panel to TestComplete. Trial users can speak with SmartBear engineers here. To start a conversation, click the Chat icon in the top-right corner of the TestComplete window and enter your message:
Java 9 Support
TestComplete 12.4 supports Java 9 that has been released recently. You can use this version to test your 32- and 64-bit Java and JavaFX applications created with the Java 9 release builds. This includes testing of Android applications created with the Java 9 compiler.
Testing of Oracle Forms applications running with Java 9 is not currently supported.
Overall Improvements
-
Arbitrary files in test projects. Now, you can add any files to your test project. For example, you can add Excel or CSV files with test data, or any other files your test uses. You do this in the same way in which you add external project items to your project: with the Add > Existing Item command of the context menu. After that, you work with these files in the same manner as you work with project items:
-
You can see the files in the Project Explorer tree along with other project items.
-
You can view and edit them at any time: a double-click on a file opens the application associated with it in the operating system.
-
You can organize the files into logical folders for easier management.
-
Finally, when you start a test run in the Environment Manager, TestComplete will upload these files to the remote cloud machine automatically (see above).
-
-
Automated installation of browser support patches. The TestComplete and TestExecute installation packages include the AutoUpdate.exe utility. It has been part of the products for some time. In version 12.4, it got a new command-line argument – /InstallAvailablePatches – that starts installation of available browser patches. So, now, you can update browser support modules on your test computers from the command line. See Web Browser Updates.
-
Web request simulation. TestComplete 12.4 includes a new keyword-test operation and a few scripting objects that you can use to send HTTP requests from your tests and to handle the responses. This feature dramatically simplifies simulating a wide range of Web-related actions like webhook calls, downloading and uploading files to websites, and so on. See these links:
- Keyword-test operation: Send Request
- Scripting objects:
aqHttp
,aqHttpRequest
,aqHttpResponse
,aqHttpStatusCode
-
Name mapping improvements:
-
The Name Mapping editor has a new search text box in the toolbar, which you can use to find mapped objects in the editor. The editor searches for the entered text both in property names and values. This helps you find the needed objects quickly. See Search and Replace in the Name Mapping Repository.
-
You can now copy and paste mapped objects in the Mapped Objects tree.
-
-
Quick renaming of functions and variables: The Script Editor context menu has two new commands that help you rename variables and script functions easily: Rename Variable and Rename Function. The Rename Variable command replaces the variable name in all the script units of your project. The Rename Function command spreads the new function name across the entire project. It replaces the name in all script units, keyword tests, test items, and other project elements. See Renaming Functions and Variables.
-
Script Editor improvements:
-
A double-click on a variable or function name in script code highlights all the mentions of this variable or function in the current script unit.
-
In Python scripts, you can navigate among classes and methods declared in the current unit by selecting them from the routine list on the Code Editor toolbar.
-
-
Version 12.4 includes new command-line arguments, which help you –
-
Export test results in the HTML format.
-
Launch individual project test items from the command line.
-
-
Image testing improvements. The
Touch
andClick
methods of theImageSetItem
object have become interchangeable.Touch
can now simulate clicks on the desktop, andClick
can simulate touches of a mobile device screen. -
Better error messaging. If the test engine fails to find a mapped object during the test run, it posts the object image from the Name Mapping repository to the list to help you understand what object it was waiting for.
-
Keyword testing improvements:
-
TestComplete 12.4 offers two new operations to help you read data from and write them to files: Load from File and Save to File. You can find these operations in the new Data Access category. Earlier, you had to write script code for this.
-
The Data-Driven Loop operation has been moved from the Test Actions to the new Data Access category.
-
The new category also contains the new Send Request operation that simulates HTTP requests (see above).
-
-
TestComplete now supports Qt controls ver. 5.8.
-
The Object Browser now displays invisible objects in grey. This makes it easier to understand the status of controls in the applications you are exploring.
-
Script extension changes:
-
Custom record-time actions added via script extensions are back. You can implement them and call them in the same way you did it in earlier TestComplete versions:
-
Script extensions can now use PNG files. Earlier, they supported only bitmap images. See Script Extension Files - Overview.
-
-
The Help > About dialog now displays information on your license and your customer ID.
-
The Search hidden text option in the Find and Replace dialogs was renamed to Search in collapsed sections.
-
A number of bugs reported by our customers have been fixed.
Scripting Improvements
-
V8 5.8. JavaScript in TestComplete is now powered by version 5.8 of the V8 engine.
-
Faster work with COM objects in JavaScript. Version 12.4 introduces a new
getActiveXObject
method for obtaining COM objects in JavaScript code. This method provides faster access to COM objects and the objects it returns provide faster access to methods and properties of the desired COM objects as compared to theSys.OleObject
property that you used before. Our tests show the 2 - 10 time increase. We recommend using the new method as a replacement forSys.OleObject
in JavaScript tests. -
Python f-strings are supported now. Also, we have fixed a number of Python-related bugs reported by our customers.
-
Smarter support for binary files and data. TestComplete includes a new
aqBytes
object that represents a sequence of binary data as an array of bytes, and includes special methods that let you work with bytes as with array items.Also, the
aqBinaryFile
object now has a number of newWrite…
methods that simplify storing values of different types to binary files. All these make the work with binary data easier. TheaqBinaryFile.Write
method has become obsolete. -
Changed behavior of the JavaScript
$get
function: if you use this function to get a property value and the property getter raises an exception, the$get
function will also raise an exception. In earlier versions, this method returnedundefined
and no exception occurred. Be aware! This change means you might get unexpected exceptions which you did not have before. -
New objects for simulating HTTP requests from script code. See above.
Mobile Testing Improvements
Android Testing
-
Connecting to test devices via Wi-Fi. Earlier, TestComplete supported USB connections only. Now, it can connect to test devices via Wi-Fi, which, in its turn, frees you from keeping the devices in the room, where your test computers reside. That is, you can create and run tests on your devices from any computer in your network. For details, see Connecting TestComplete to Android Devices (Legacy).
-
Support for Android 8. You can create and run automated tests for Android applications working on this operating system.
-
Smarter APK instrumentation. When instrumenting APK packages, TestComplete re-packs them and the files that make up the package. Earlier versions of TestComplete re-packed all the files in an APK. This broke APKs that included unpacked files. So, now, TestComplete checks the format of internal files and packs only those of them that were packed initially.
-
Support for Android Toolbar controls. TestComplete recognizes these controls and controls based on them (like ActionBar) and uses special wrapper test objects to work with these objects.
-
Previous TestComplete versions used the
Layout
name for controls of thecom.android.internal.view.menu.ActionMenuView
andandroid.widget.ActionMenuView
classes. TestComplete 15.47 uses theBar
name for these classes. To avoid errors, you have to change tests created in previous TestComplete versions.
iOS Testing
-
Support for iOS 11. Now, you can create and run tests for iOS applications running on this operating system.
-
Support for Xcode 9. You can create and run tests for applications created with Xcode 9.
-
The New Certificate Exporter utility helps you easier obtain Developer Certificate, PEM and Provisioning Profile files required for instrumenting your iOS applications. The utility is included into the TestComplete installation package and is copied to your PC automatically. You can find it in the <TestComplete>/Bin/Extensions/iOS folder. For details, see the utility description.
Web Testing Improvements
-
Support for Chromium Embedded Framework (CEF) ver. 3.2883.1553.
-
Support for Mozilla Firefox 52-55.
-
Support for Google Chrome 61.
Discontinued Support & Questions
-
TestComplete no longer supports Firefox ver. 45–51.
-
In one of the future releases, we are going to discontinue support for Microsoft Internet Explorer 9. We will not run tests on this browser and will not release patches for it. Of course, you will still be able to run TestComplete web tests on this browser (like you can run tests on any application), but you will do this on your own responsibility. If you need support for this browser, please send a message to the SmartBear Support Team or to your Sales Representative.
-
Also, we would like to remind you that we are going to hide the Web Service command from the first page of the Checkpoint wizard (see earlier notification). Please let us know if you use this command in the wizard.