TestStand Python Adapter Not Recognizing Inner Classes, Methods, and Attributes

Updated May 23, 2025

Reported In

Software

  • TestStand

Programming Language

  • Python

Issue Details

I have a Python script with a main class that instantiates another class with multiple attributes defined. I have overridden the __getattr__() method to check if a property node exists in the second class and then call that property directly. This implementation should allow the main Python class to call the setters/getters in the secondary class directly. However, I am observing that TestStand won’t show these property nodes, preventing me from accessing them.

 

When I write the name of an existing attribute, as shown in the image below, I see a warning icon next to the Attribute Name field that states: "The specified attribute is not found in the specified Python module." Despite the warning, I am able to execute the sequence successfully.

 

 

How can I get the Python adapter in TestStand to recognize inner classes, methods, and attributes?

Solution

This behavior can occur if the jedi Python module, which is required to extend the information display functionality of the Python steps in TestStand, is not installed in the active Python environment. As explained in TestStand 2022 Q4 Changes: Python Adapter Improvements, the Python adapter uses this module to process the properties added via the dir() method. To solve the issue and enable the information display improvements, follow these steps:

  1. Open your command prompt or terminal.
  2. Ensure you are in the correct Python environment where TestStand is configured.
  3. Install the jedi module by running the following command:

 

pip install jedi

 

  1. Restart TestStand to apply the changes.

 

If installing the jedi module doesn’t solve the issue:

  • Verify that the Python environment used by TestStand is correctly configured (Python Adapter Configuration Dialog Box).
  • Ensure that the __getattr__() method is correctly implemented and does not have any syntax errors.
  • Check if other required Python modules are installed and up to date.

Additional Information

Certain workflows, like performing step into debugging operations or viewing additional elements used in Python code modules require the installation of specific packages. Refer to the Python Adapter section of the TestStand User Manual for additional details.