Parameterizing File Checkpoints

Applies to TestComplete 15.64, last modified on June 12, 2024

In TestComplete, file checkpoints verify the actual contents of specified files comparing them with baseline files stored in the project’s Stores > Files collection.

File checkpoints in TestComplete take two parameters:

  • The name (with the full path) of the file you want to verify.

  • The allowed difference value (in bytes).

File checkpoints you create by using the File Checkpoint wizard use hard-coded values to indicate the file to verify and the allowed difference.

You may want to parameterize your file checkpoints in your tests, that is, to replace file checkpoints’ hard-coded values with variable values.

For example, if a name of the file you want to verify changes between test runs, you can replace the checkpoint’s hard-coded file name with a parameter that obtains the required file name before each test run.

The image below demonstrates two file checkpoints. One of them verifies a file specified by its hard-coded name, the other verifies a file whose path is stored in the keyword test Param1 parameter:

Parameterized File Checkpoint Operation

The sections below describe how to parameterize your file checkpoints:

In keyword tests

  1. Create a parameter that will pass the needed value to the checkpoint. It can be:

    For example, the image below shows the Param1 parameter of a keyword test:

    Creating a keyword test parameter to parameterize a checkpoint

    Click the image to enlarge it.

  2. In your keyword test, replace the hard-coded value of the checkpoint operation with the created parameter or variable:

    Parameterizing Checkpoint operation

    Click the image to enlarge it.

  3. Assign the needed value to the created parameter or variable:

    • If you use a test parameter, set its value when you run your test:

      • If you run it as part of the project’s test items sequence, set the test parameter in the Execution Plan editor of your project:

        Setting parameter value

        Click the image to enlarge it.

      • If you run your test from another test, set the parameter value when calling your test.

    • To set a variable value, you can use the Set Variable Value operation.

  4. Run the test with the needed parameter value assigned.

In scripts

  1. Define a parameter or variable that will pass the needed value to the checkpoint. It can be:

    For example, the code snippet below shows how to declare the Param1 parameter of a script routine:

    JavaScript, JScript

    function ValidateFile(Param1)
    {
      …
      …
    }

    Python

    def ValidateFile(Param1):
      …

    VBScript

    Sub ValidateFile(Param1)
      …
    End Sub

    DelphiScript

    procedure ValidateFile(Param1);
    begin
      …
    end;

    C++Script, C#Script

    function ValidateFile(Param1)
    {
      …
    }
  2. Replace the hard-coded parameter of the Files.File_Checkpoint_Name.Check method with the created variable or parameter:

    JavaScript, JScript

    function ValidateFile(Param1)
    {
      …
      // Validate the file
      Files.my_file.Check(Param1);
      …
    }

    Python

    def ValidateFile(Param1):
      …
      # Validate the file
      Files.my_file.Check(Param1)
      …

    VBScript

    Sub ValidateFile(Param1)
      …
      ' Validate the file
      Call Files.my_file.Check(Param1)
      …
    End Sub

    DelphiScript

    procedure ValidateFile(Param1);
    begin
      …
      // Validate the file
      Files.my_file.Check(Param1);
      …
    end;

    C++Script, C#Script

    function ValidateFile(Param1)
    {
      …
      // Validate the file
      Files["my_file"]["Check"](Param1);
      …
    }
  3. Assign the needed value to the parameter or variable:

    • If you use a script parameter, you set the parameter value when you call the script, either from another script routine or as the project’s test item.

      The image below shows how to set the parameter value when running the script routine as a project’s test item:

      Setting parameter value

      Click the image to enlarge it.

    • If you use a variable, set its value in the script before the script executes the checkpoint.

  4. Run the script with the needed parameter value assigned.

See Also

File Checkpoints
About File Checkpoints
Creating File Checkpoints
Parameterizing Keyword Tests
Parameterizing Script Routines

Highlight search results