ForceRunMode Property

Applies to TestComplete 14.0, last modified on January 23, 2019

Description

A tested application can be run in Profile mode. In this mode, TestComplete launches AQtime and then starts the application under AQtime. The TestedAppProfileParams.RunMode property specifies AQtime’s run mode.

TestComplete starts and controls AQtime via COM. If AQtime is launched this way, it always functions in Silent mode. Changing AQtime’s run mode lets you analyze profiling results using AQtime’s dialogs (in Silent mode no dialogs are displayed).

The ForceRunMode property specifies whether TestComplete sets AQtime’s run mode after the profiling starts or at the end of the profiler run.

The ForceRunMode property is the same as the Run mode value specified for the application in the Tested Applications editor.

Declaration

TestedAppProfileParamsObj.ForceRunMode

Read-Write Property Boolean
TestedAppProfileParamsObj An expression, variable or parameter that specifies a reference to a TestedAppProfileParams object

Applies To

The property is applied to the following object:

Property Value

True, if TestComplete sets AQtime’s run mode after profiling starts and False if TestComplete sets the run mode after profiling is over.

Remarks

If you assign a value to this property, TestComplete will treat your project as modified. So, you will need to save or cancel changes when closing the project. The specified value will be displayed in the TestedApps editor.

Example

The following example demonstrates how to modify the tested application’s parameters in script:

JavaScript, JScript

function Test()
{

  var testApp = TestedApps.Items("SampleApp");

  // Obtain the tested application's parameters
  var params = testApp.Params;
  // Obtain the Profile run mode's parameters
  var profileParams = params.ProfileParams;

  // Specify the AQtime version
  profileParams.AQtimeVersion = 8;

  // Specify that TestComplete will use an AQtime project to profile the tested application
  profileParams.UseProject = true;
  // Specify the path to the AQtime project that TestComplete will use
  profileParams.ProjectFileName = "D:\\Work Folder\\Sample.aqt";

  // Specify that TestComplete sets the AQtime run mode after profiling starts
  profileParams.ForceRunMode = true;
  // Specify the AQtime run mode during profiling
  profileParams.RunMode = "Normal";

  // Specify that TestComplete uses the profiler specified in the TestComplete project
  profileParams.OverrideProfiler = true;

  // Specify the name of the AQtime profiler that will be used to profile the application
  profileParams.ProfilerName = "Performance Profiler";

  // Apply the modified parameters and activate the Profile run mode
  profileParams.Activate();

  // Launch the tested application
  var AQtimeObj = testApp.Run();

  // Simulate user actions against the tested application
  // …

  // Wait until profiling is over and export the profiling results
  AQtimeObj.WaitAndExportResults("D:\\Work Folder\\SummaryResultsFile.xml", "D:\\Work Folder\\ResultsFile.xml");

}

Python

def Test():
  testApp = TestedApps.Items["SampleApp"]
  # Obtain the tested application's parameters 
  params = testApp.Params
  # Obtain the Profile run mode's parameters 
  profileParams = params.ProfileParams
  # Specify the AQtime version 
  profileParams.AQtimeVersion = 8
  # Specify that TestComplete will use an AQtime project to profile the tested application 
  profileParams.UseProject = True
  # Specify the path to the AQtime project that TestComplete will use 
  profileParams.ProjectFileName = "D:\\Work Folder\\Sample.aqt"
  # Specify that TestComplete sets the AQtime run mode after profiling starts 
  profileParams.ForceRunMode = True
  # Specify the AQtime run mode during profiling 
  profileParams.RunMode = "Normal"
  # Specify that TestComplete uses the profiler specified in the TestComplete project 
  profileParams.OverrideProfiler = True
  # Specify the name of the AQtime profiler that will be used to profile the application 
  profileParams.ProfilerName = "Performance Profiler"
  # Apply the modified parameters and activate the Profile run mode 
  profileParams.Activate()
  # Launch the tested application 
  AQtimeObj = testApp.Run()
  # Simulate user actions against the tested application 
  # ... 
  # Wait until profiling is over and export the profiling results 
  AQtimeObj.WaitAndExportResults("D:\\Work Folder\\SummaryResultsFile.xml", "D:\\Work Folder\\ResultsFile.xml")

VBScript

Sub Test

  Set testApp = TestedApps.Items("SampleApp")

  ' Obtain the tested application's parameters
  Set params = testApp.Params
  ' Obtain the Profile run mode's parameters
  Set profileParams = params.ProfileParams

  ' Specify the AQtime version
  profileParams.AQtimeVersion = 8

  ' Specify that TestComplete will use an AQtime project to profile the tested application
  profileParams.UseProject = True
  ' Specify the path to the AQtime project that TestComplete will use
  profileParams.ProjectFileName = "D:\Work Folder\Sample.aqt"

  ' Specify that TestComplete sets the AQtime run mode after profiling starts
  profileParams.ForceRunMode = True
  ' Specify the AQtime run mode during profiling
  profileParams.RunMode = "Normal"

  ' Specify that TestComplete uses the profiler specified in the TestComplete project
  profileParams.OverrideProfiler = True

  ' Specify the name of the AQtime profiler that will be used to profile the application
  profileParams.ProfilerName = "Performance Profiler"

  ' Apply the modified parameters and activate the Profile run mode
  profileParams.Activate

  ' Launch the tested application
  Set AQtimeObj = testApp.Run

  ' Simulate user actions against the tested application
  ' …

  ' Wait until profiling is over and export the profiling results
  Call AQtimeObj.WaitAndExportResults("D:\Work Folder\SummaryResultsFile.xml", "D:\Work Folder\ResultsFile.xml")

End Sub

DelphiScript

procedure Test();
var testApp, params, profileParams, AQtimeObj;
begin

  testApp := TestedApps.Items('SampleApp');

  // Obtain the tested application's parameters
  params := testApp.Params;
  // Obtain the Profile run mode's parameters
  profileParams := params.ProfileParams;

  // Specify the AQtime version
  profileParams.AQtimeVersion := 8;

  // Specify that TestComplete will use an AQtime project to profile the tested application
  profileParams.UseProject := true;
  // Specify the path to the AQtime project that TestComplete will use
  profileParams.ProjectFileName := 'D:\Work Folder\Sample.aqt';

  // Specify that TestComplete sets the AQtime run mode after profiling starts
  profileParams.ForceRunMode := true;
  // Specify the AQtime run mode during profiling
  profileParams.RunMode := 'Normal';

  // Specify that TestComplete uses the profiler specified in the TestComplete project
  profileParams.OverrideProfiler := true;

  // Specify the name of the AQtime profiler that will be used to profile the application
  profileParams.ProfilerName := 'Performance Profiler';

  // Apply the modified parameters and activate the Profile run mode
  profileParams.Activate;

  // Launch the tested application
  AQtimeObj := testApp.Run;

  // Simulate user actions against the tested application
  // …

  // Wait until profiling is over and export the profiling results
  AQtimeObj.WaitAndExportResults('D:\Work Folder\SummaryResultsFile.xml', 'D:\Work Folder\ResultsFile.xml');

end;

C++Script, C#Script

function Test()
{

  var testApp = TestedApps["Items"]("SampleApp");

  // Obtain the tested application's parameters
  var params = testApp["Params"];
  // Obtain the Profile run mode's parameters
  var profileParams = params["ProfileParams"];

  // Specify the AQtime version
  profileParams["AQtimeVersion"] = 8;

  // Specify that TestComplete will use an AQtime project to profile the tested application
  profileParams["UseProject"] = true;
  // Specify the path to the AQtime project that TestComplete will use
  profileParams["ProjectFileName"] = "D:\\Work Folder\\Sample.aqt";

  // Specify that TestComplete sets the AQtime run mode after profiling starts
  profileParams["ForceRunMode"] = true;
  // Specify the AQtime run mode during profiling
  profileParams["RunMode"] = "Normal";

  // Specify that TestComplete uses the profiler specified in the TestComplete project
  profileParams["OverrideProfiler"] = true;

  // Specify the name of the AQtime profiler that will be used to profile the application
  profileParams["ProfilerName"] = "Performance Profiler";

  // Apply the modified parameters and activate the Profile run mode
  profileParams["Activate"]();

  // Launch the tested application
  var AQtimeObj = testApp["Run"]();

  // Simulate user actions against the tested application
  // …

  // Wait until profiling is over and export the profiling results
  AQtimeObj["WaitAndExportResults"]("D:\\Work Folder\\SummaryResultsFile.xml", "D:\\Work Folder\\ResultsFile.xml");

}

See Also

RunMode Property
About Tested Applications
Run Modes and Parameters
Editing Desktop Application Parameters
Integration With AQtime

Highlight search results