When re-analyze or run the tests after modifying source codes, CT 2023.12 detects modifications with integrity checker. The types of source code changes that CT 2023.12 detects are:
  • Modifying names of classes used in tests
  • Modifying names of test or stub functions.
  • Modifying names or type of global variables used in tests.
  • Modifying names of member functions used in class codes
  • Modifying name or number of return type or parameter of test functions.
  • Modifying the code of the target function to be injected with the fault.

Modifying names of classes used in tests

When modifying names of classes used in tests, the Class Reconfiguration dialog shows up.

  1. The left area displays a list of classes where changes have been detected. Functions that have been successfully configured will be marked with .
  2. The right area displays the list of classes in the current source code:
    • The classes are sorted based on the similarity of their names.
    • Classes with high similarity are automatically linked.
  3. It allows to search a class name. ( *: any string, ?: any letter )

Modifying names of test or stub functions

When modifying names of test or stub functions, the Function Reconfiguration dialog shows up.

  1. Left area is a list of function that modification detected. Functions that finish reconfiguration are marked with .
  2. Left area is a list of function contained in present source code.
    • It’s sorted by similarity of function name.
    • Function with high similarity is connected automatically.
  3. It allow to search a function name. ( *: any string, ?: any letter )
  4. It show or hide functions with tests.

Modifying names or type of global variables used in tests

When modifying names or type of global variables used in tests, the Global Variable Reconfiguration dialog shows up.

  1. Left area is a list of global variables that cannot find.
    • Uncheck check boxes when variables are deleted.
  2. Right area contain text boxes for entering present global variable.
    • When user modify a global variable name, it shows global variable list in order of similarity.
  3. When user enter a valid variable, red mark in the text box disappear.

  • If many global variables with similar names, such as member variables of a structure, have been changed, you can use the [Change all variables with the same name] feature to modify the global variable names at the same time. If the [Change all variables with the same name] checkbox is checked and the name of a global variable is modified, the name of a global variable with a similar name is modified at the same time. If you uncheck the checkbox, you can edit the names of global variables individually.

Modifying names of member functions used in class codes

When modifying names of member functions used in class codes, the Class Code Reconfiguration dialog shows up.

  1. In the left area, the classes that need to be reconfigured are displayed in a tree format.
    • The classes and class codes are structured as a parent-child tree.
    • The number next to each class represents (the number of class codes confirmed by the user / the number of class codes to be reconfigured).
    • The number next to each class code represents the count of changes and deletions in that class code.
  2. In the right area, you will see the previous class code (gray background, on the left) and the updated new class code (white background, on the right) during the reconfiguration process.
    • The previous class code cannot be modified, while the new class code can be modified.
    • Functions that have been deleted or manually added are indicated with a red background.
    • Functions that have been changed through the reconfiguration process are indicated with a yellow background.
    • Newly added functions are indicated with a green background.

Modifying name or number of return type or parameter of test functions

When modifying name or number of return type or parameter of test functions, the Test Reconfiguration dialog shows up.

  1. A list of modified functions.
  2. Test information about function before modifying.
    • If a variable connect to test information after modifying, it’s displayed in green and if not, it’s displayed in red.
  3. Test information about function after modifying.
    • When select a variable of function before modifying, it shows connected variable with selected variable.
    • When drag a variable of function before modifying and drop to a variable of function after modifying, test data are copied.

Modifying the code of the target function to be injected with the fault

If the code of the fault injection function has changed, the Reconfiguring Fault Injection dialog appears.

The list of fault injection functions is displayed in area 1, pre-change fault injection information is displayed in area 2, and after-change fault injection information is displayed in area 3.

  • The list of fault injection functions
    • If the checkbox is unchecked, the previous fault injection information is retained without saving changes.
  • The Fault Injection Information window
    • Pre-change fault injection information can only be copied. You can copy by shortcut(Ctrl + C) or right-click.
    • After-change, the fault injection information can be modified. You can copy/paste by shortcut (Ctrl + C / V) or right-click.
    • Changed lines are marked with a line number in red.
    • Double-clicking on a line selects the same line as the one selected in the other Fault Injection Information window.
    • The code written on the selected line can be shown in the Fault Injection Code window at the bottom.
  • The Fault Injection code window
    • The code written before and after the selected line is displayed.
    • Locations where fault injection is not allowed are disabled so that you cannot write code.

Need more help with this?
Don’t hesitate to contact us here.

Thanks for your feedback.