Forum Discussion
Bharadwaj, I too am wondering if you ever found out anything on this. I have a similar scenario and was curious as to what you found. Thanks
- tristaanogre9 years agoEsteemed Contributor
The reason for the slow performance is most likely because, with the addition to the UI Automation in his project, he is basically telling TestComplete to access ALL objects of matching classes using that methodology, not just the ones he needs for his report. The better solution is to take his time and map each component type he needs and ONLY those he needs with the UI Automation plug in.
Of course, thjis original post is 5 years old... that's several versions of TestComplete ago... so, it's entirely likely that the slowness has been resolved.
If you are having a specific problem with TC 12 with this feature, it might be best to address that separately.- bknutson9 years agoContributor
Thanks for the reply Robert.
Yes, I saw that the original post was old but, figured I would see if there was an answer.
I am using TC 12.x. In my situation, I have simple window (WinFormsObject) with a grid in it that I can only access with UIA. It currently has about 2600 rows. When using the Object Browser, TC waits forever. Looking at the Task Manager processes, I see my app memory usage just keep climbing as TC tries to read the grid. I am guessing Object Browser is trying to fill in with all the info in the grid. I have been able to get the Object Browser to expand a bit and show the actual grid under the main window but it is hit and miss. Not sure why it has shown the sub-objects a few times but most other times just sits and spins.
I will open a new thread on my issue after I dig into things a bit more. Thanks for your reply though.
- tristaanogre9 years agoEsteemed Contributor
Natively, TestComplete supports a couple of grid type Winforms Objects.
HEre's the full lost of supported types:
Supported Microsoft ControlsWindows Forms
Controls Library Classes CheckBox .NET Framework v. 2.0, 3.0, 3.5, 4.0, 4.5.x, 4.6, 4.6.1 System.Windows.Forms.CheckBox DataGrid .NET Framework v. 2.0, 3.0, 3.5, 4.0, 4.5.x, 4.6, 4.6.1 System.Windows.Forms.DataGrid DataGridView .NET Framework v. 2.0, 3.0, 3.5, 4.0, 4.5.x, 4.6, 4.6.1 System.Windows.Forms.DataGridView DomainUpDown .NET Framework v. 2.0, 3.0, 3.5, 4.0, 4.5.x, 4.6, 4.6.1 System.Windows.Forms.DomainUpDown LinkLabel .NET Framework v. 2.0, 3.0, 3.5, 4.0, 4.5.x, 4.6, 4.6.1 System.Windows.Forms.LinkLabel Main menus and context menus .NET Framework v. 2.0, 3.0, 3.5, 4.0, 4.5.x, 4.6, 4.6.1 System.Windows.Forms.ContextMenuStrip
System.Windows.Forms.MenuStripNumericUpDown .NET Framework v. 2.0, 3.0, 3.5, 4.0, 4.5.x, 4.6, 4.6.1 System.Windows.Forms.NumericUpDown PropertyGrid .NET Framework v. 2.0, 3.0, 3.5, 4.0, 4.5.x, 4.6, 4.6.1 System.Windows.Forms.PropertyGrid RadioButton .NET Framework v. 2.0, 3.0, 3.5, 4.0, 4.5.x, 4.6, 4.6.1 System.Windows.Forms.RadioButton Strip StatusBar (StatusStrip) .NET Framework v. 2.0, 3.0, 3.5, 4.0, 4.5.x, 4.6, 4.6.1 System.Windows.Forms.StatusStrip Strip Toolbar (ToolStrip) .NET Framework v. 2.0, 3.0, 3.5, 4.0, 4.5.x, 4.6, 4.6.1 System.Windows.Forms.ToolStrip Rather than using UI Automation, you MIGHT be able to assign your component to one of these in the Object Mapping for your project. That's a potential solution rather than using UI Automation.