Features Added to TestComplete 12.5

Applies to TestComplete 15.63, last modified on April 10, 2024

This topic describes the changes made to TestComplete 12.5. For information on the changes made to other versions of the product, see Version History.

In version 12.50

Support for Electron Applications

You can now create and run automated tests for Electron-based desktop applications. TestComplete recognizes individual controls in these applications and provides access to their native methods and properties. It also recognizes control types and offers special methods and properties that help you simulate user actions on the controls and get their data.

To test Electron applications, you should launch them as tested applications from within TestComplete or your test. For details, see Testing Electron Applications.

Xamarin.Forms Support

With version 12.5, you can create and execute tests for Xamarin.Forms applications running on Android or iOS devices. TestComplete recognizes individual controls in these applications and makes their native methods and properties available to your tests. Also, it provides control-specific methods and properties to help you simulate various test actions on these controls in your tests. See Supported Xamarin.Forms Controls.

In order for the test engine to be able to reach application controls, you need to compile Xamarin.Forms applications in a special way. For complete information, see Testing Xamarin.Forms Applications.

VideoRecorder Extension

The new VideoRecorder script extension enables you to record video files for your automated test runs. These videos help you understand what happened in the system during the playback and find the cause of an error faster. We announced this extension some time ago in our TestComplete Community, and decided to repeat this news now for those users who missed it for some reason.

The extension is not bundled with TestComplete. You can get it for free from its GitHub repository:


Script extensions are script-based plugins for the TestComplete and TestExecute open architecture. Learn more about them and extend the products the way you like.

Overall Improvements

  • Support for Java 10:

    • You can now use TestComplete to create, record and run automated tests for Java applications created with Java 10.

      JavaFX 10 applications are also supported.

    • TestComplete recognizes individual controls in Java 10 applications and provides access to their native members. Also, it provides test methods and properties that are specific to the control type and that help you simulate user actions on them with ease.

    • You can call methods of Java 10 classes from your scripts.

    Testing of Android applications created with Java 10 is not currently supported.

  • Microsoft Team Foundation Server 2018 Integration. You can integrate TestComplete tests into your Visual Studio test projects, and then run them as part of a team build or release controlled by Team Foundation Server 2018. See Integration With Microsoft Visual Studio and Azure DevOps.

  • Using existing masks in region checkpoints. Based on our customers’ feedback, we have restored the possibility of using existing masks for new region checkpoints.

  • Smarter source control support:

    • We have changed the format of project files and the algorithms of opening and saving these files to avoid merge issues that might occur when you get project files from or put them to source controls.

    • The Get Project from Subversion Repository dialog now remembers the values entered in the Repository Path and Location fields last time. So, you will not have to enter these values again when you retrieve your projects from SVN next time.

  • Enhanced WPF support:

    • Support for attached properties in WPF applications. TestComplete can now expose attached properties of WPF objects, so you can see these properties in the Object Browser and use them in your tests. To access attached properties, use the Attached-Property-Provider_Property-Name syntax, for example DockPanel_Dock. TestComplete only shows attached properties with non-default values (explicitly defined in the application source code). Attached properties with default values will be hidden, however, you still can use them in your tests. Using several attached properties with identical names, even with different namespaces and assemblies, is not supported.

    • Table checkpoints for WPF ListViews. Now you can create table checkpoints for a WPF ListView control working in the GridView mode. In earlier versions of the product, the Table Checkpoint wizard treated WPF ListView controls as list boxes, and the wizard reported only one column in the control that was always called Items. In TestComplete 12.50, this limitation has gone, and you can create table checkpoints for WPF ListView controls in the same way you do this for other tabular controls.

      Note that the table checkpoints you created for WPF ListView controls in earlier versions of TestComplete are incompatible with the new functionality. So, in version 12.50, you need to update the table checkpoints for these controls.

  • Support for Chrome 65 and Firefox 59. You can now create automated functional web tests on pages opened in the recent versions of these web browsers.

  • Support for the latest available CEF version. You can now create and run automated tests for applications using Chromium Embedded Framework version 3.3282.1741 and earlier.

  • Support for Infragistics UltraComboBox. TestComplete now recognizes a new control in tested .NET applications – Infragistics UltraComboBox version 2017 Vol. 1. You can use test methods and properties that are specific to combo boxes to simulate user actions on these controls.

  • Improved code refactoring:

    • The new Find Usages context-menu item enables a script tracer functionality in the Code Editor to help you quickly find all the occurrences of a variable, function, or object in your script code.

    • The former Rename Variable and Rename Function commands of the Code Editor context menu have been replaced with a single Rename command. This command is context-specific. It works in the same way the former two commands did. It is applied to function calls or variable names depending on whether you call it for a function or a variable.

  • Smarter Close methods. The default timeout of the Process.Close() and Browser.Close() methods has been increased from 3,000 to 60,000 milliseconds. The method now also checks for the “Do you want to save the changes?” window and similar ones, and stops waiting for the process to exit, if any.

  • Easier work in the Name Mapping editor. You can modify aliases of your tested objects in the Name Mapping repository easier. Use the new Exclude Items command to remove unnecessary intermediary levels from the Aliases tree. If the removed alias has children, they will remain in the tree and will move one level up. The mapped objects associated with the alias will also remain in the repository.

  • Better Catch operation. The Catch keyword-test operation can now return information on the error that occurred in the Try block.

  • To improve the Firefox performance during test recording and test runs, TestComplete can now configure some of the Firefox settings automatically when you run the browser from your test or when your test opens a web page in Firefox. See the Browser Settings section in the Preparing Firefox for Web Testing topic.

  • Checkpoint improvements:

    • When you create a property checkpoint by using the Checkpoint wizard, on the Select Data to Check page of the wizard, you can select one of the suggested properties.

    • The list of the suggested properties that the Quick Checkpoint menu shows now includes indexed properties (properties that provide access to an array of values by their index).

    • When you create a property checkpoint and switch between the Basic and More Properties pages of the wizard, the selected property no longer loses focus.

    • When you create Quick Checkpoints, the icon is now displayed below the mouse pointer rather than next to the top right corner of the red frame that highlights the current object. This makes selecting an object easier, especially when you are selecting a complex object that consists of several objects.

    • The property checkpoints now post more detailed messages to the test log. If the checkpoint’s baseline value or actual value or both include special characters (for example, \r (carriage return)) the checkpoint result message will show those characters distinctly.

  • TestComplete now supports Qt controls version 5.9.

Mobile Testing Improvements

  • More info on Wi-Fi connections to Android mobile devices. Version 12.5 offers the new Device(…).Connections(…).WifiInfo object that provides information on the Wi-Fi connection between your computer and a mobile device. The object includes properties that return the device’s IP and MAC addresses, connection speed, network SSID and other data.

  • Support for Android 8.1 (API Level 27). Now you can create and run automated tests on devices running this version of the Android operating system.

  • Support for iOS 11.3. You can create and run tests for iOS applications running on this operating system.

  • Support for iPhone 7 plus, 8, 8 plus and X, and iPad mini 3 and 4.

Updated Test Log View

  • New Time Diff log column. The test log has the new Time Diff column that displays the time difference between messages in the log. This helps you determine how much time passed between messages during the test run:

    Functional testing with TestComplete: New Time Diff column in the test log
  • Summary information in exported test results. Test results exported in the HTML, MHT and XML formats now include summary information on the test run. The information includes the start time of the test run, the end time, the test duration, the number of warnings and errors and the name of the computer where the test was run.

  • Filtering exported results. You can filter test results exported in the HTML or MHT format by the message type by selecting the needed message type on the log toolbar.

    In addition, you can filter the results by their content by typing the needed text in the Search edit box. The log will show only those messages that contain the typed text:

    Functional testing with TestComplete: New filter options for logs exported to HTML and MHT files

Scripting and Debugging Improvements

  • JavaScript in TestComplete now supports arrow functions.

  • The debugger panels and dialogs (Watch List, Locals, Inspect, Evaluate) now support Python tuples and lists.

  • If the number of the following items is large, the debugger panels and dialogs now group them by 100 for more convenient presentation:

    • Python tuples and lists

    • JavaScript arrays and typed arrays

    • Arrays returned from COM objects (SAFEARRAY objects)

Changes in Cross-Browser Testing Support

  • We have renamed the Environment Manager project suite item to CrossBrowserTesting to make this feature clearer and easier to find. The command-line arguments and scripting methods that are responsible for running tests in the CrossBrowserTesting.com cloud have also been renamed:

    Old Names New Names
    /environment and /env
    (command-line options)
    (running tests via COM)

    To keep your existing tests runnable, the old names will be supported for some time and will be removed in one of the future updates.

  • The CrossBrowserTesting panel now shows the Running status only for the tests that are actually running. For those tests whose environments are still being prepared for testing, it uses the Waiting status.


  • New command-line arguments to help you manage plugins of the Desktop, Web and Mobile product modules easily. These options are helpful if you are using a Floating license. Specify the modules you are going to use in order not to consume the licenses of other modules accidentally:

    • TestComplete has the new EnableModule command-line option. Use it to enable or disable plugins of the Desktop, Web or Mobile module on TestComplete startup.

    • The TestComplete installer has the new Desktop, Web, and Mobile command-line options. Use them to install only the plugins that match the Desktop, Web and/or Mobile modules. You can use these options when installing TestComplete in silent mode.

    • The TestComplete installer uses a newer InstallShield version. When installing TestComplete in silent mode, you can use the /clone_wait argument of the InstallShield command line to wait for the installation to complete. See Installing TestComplete in Silent Mode.

  • Improved Report Generator utility:

    • You can use the Report Generator utility to monitor mobile applications running on Android and iOS devices connected to your computer.

    • You can now select applications for monitoring easier.

  • Improved merging of Name Mapping data. When you are merging Name Mapping files in TestComplete, the latter also merges item images.

  • Updated structure of sample projects. Now, TestComplete includes only a few basic sample projects. The other samples are organized into a separate package that you can download from the https://support.smartbear.com/testcomplete/downloads/samples/ page of our website. See TestComplete Samples.

  • Version 12.5 includes a few UI changes:

    • Updated Start page.

    • New icons of toolbar and menu items.

    • The last step of the Create New Project wizard now shows only JavaScript and Python for selection. We hope this will decrease confusion and help new users select the most popular languages. To view the complete list of supported languages, click More languages.

  • The Send WM_CLOSE option of the Playback > On unexpected windows group of project options has been renamed to Send the close command to reflect the test engine actions better.

  • We have fixed a number of bugs reported by our customers.

Discontinued Support

  • Since version 12.5, we stop supporting Microsoft Internet Explorer 9. We will no longer run tests for this browser and will not provide bug fixes for it. You will still be able to run web tests using Internet Explorer 9, but we do not guarantee these tests will work properly.

  • TestComplete no longer supports iOS version 8.x.

  • TestComplete no longer supports Objective-C and Swift applications created with Xcode 5 and 6.

See Also

Version History

Highlight search results