Contributions
Re: Need ability to detect Cursor State
Thank you for the suggestion. I attempted to implement the following: // Where control is of type IButton var cursor = control.GetProperty<IObject>("cursor"); var cursorShape = control.GetProperty<IObject>("cursor").CallMethod<int>("QCursor_shape"); But the value of cursorShape is always returned as Zero (0)... I would have expected it to be (-2) since the cursor's shape is a Pointer. Possibly this is not the correct technique to derive the cursor?664Views0likes0CommentsNeed ability to detect Cursor State
Need ability to detect Cursor State. So when I click on a button and the cursor state changes to an HourGlass... I'd like to be able to Wait until the cursor changes from an HourGlass back to a Pointer. This way I'm testing and waiting on a visiable queue instead of just waiting for the next object/control to appear or the object that was clicked to disappear.692Views0likes4CommentsTestLeft - Driver.Options.ObjectMapping
I can map controls using logic: Driver.Options.ObjectMapping["Qt Controls"]["List widget"].AddClassName("drop_list"); Driver.Options.ObjectMapping["Qt Controls"]["Combo box"].AddClassName("ZSqlComboBox"); Driver.Options.ObjectMapping["Qt Controls"]["Tree widget"].AddClassName("ZSqlListView"); Driver.Options.ObjectMapping["Qt Controls"]["Line edit"].AddClassName("ZLineEdit"); Is it possible to query to get a list of Objects that have been mapped?2 years agoPlace TestLeft QuestionsTestLeft Questions813Views1like1CommentRe: How to access inside content of QT scrollarea_viewport?
Hopefully this will help... at least I'm now able to interact with Combox Control. 1). In the TestLeft project, you will need to initialize theObjectMappingfor the QT controls: public static void ConfigureTestLeftOptions() { // //https://support.smartbear.com/testcomplete/docs/testing-with/object-identification/mapping.html // // List of QT Controls that can be mapped: // Calendar widget, Combo box, Check box, Menu, Scroll bar, Tab widget, Spin box, Tool button, Line edit, Radio button, Push button, Text edit, Tree widget, Date - time edit, Double spin box, Slider, Menu bar, Table widget, List widget. driver.Options.ObjectMapping["Qt Controls"]["List widget"].AddClassName("ZSqlListView"); driver.Options.ObjectMapping["Qt Controls"]["List widget"].AddClassName("drop_list"); driver.Options.ObjectMapping["Qt Controls"]["Table widget"].AddClassName("CadListView"); driver.Options.ObjectMapping["Qt Controls"]["Combo box"].AddClassName("ZSqlComboBox"); driver.Options.ObjectMapping["Qt Controls"]["Combo box"].AddClassName("ZSqlValueComboBox"); . . . } 2) Using the ISpyTool navigate to the Combobox Then Rt. Click and selectCopy Identification 3) Using the logic fromCopy Identification set up a method to derive the object: For Example: (Notice need toCASTto the correct Object Type) privateIComboBoxControl_CFSLogCboPresets(IDriver driver, int iCustomTimeout = 5000) { IComboBoxiControl = driver.Find<IProcess>(new ProcessPattern { ProcessName = "leds" }) .Find<ITopLevelWindow>(new QtPattern() { QtClassName = "CoreMainWindow", QtText = "CentralSquare Public Safety Suite Professional", Index = 1 }) .Find<IControl>(new QtPattern() { QtClassName = "CoreWindow", QtText = "", QtIndex = 1 }) .Find<IControl>(new QtPattern() { QtClassName = "ScreenPane", QtText = "", QtIndex = 1 }) .Find<IControl>(new QtPattern() { QtClassName = "ZScreenContainer", QtText = "", QtIndex = 2 }) .Find<IControl>(new QtPattern() { QtClassName = "ZScrollView", QtText = "", QtIndex = 1 }) .Find<IControl>(new QtPattern() { objectName = "qt_scrollarea_viewport" }) .Find<IControl>(new QtPattern() { QtClassName = "QFrame", QtText = "", QtIndex = 1 }) .Find<IControl>(new QtPattern() { objectName = "CFSLog_scr" }) .Find<IControl>(new QtPattern() { objectName = "zdrDateRange" }) .Find<IComboBox>(new QtPattern() { objectName = "cboPresets" }, 1, iCustomTimeout); //Level and Timeout value return iControl; } 4. Derive the object and the variable will look something like: (note this screen shot is after the combobox has been selected) 5. Select an item in the Combobox: // Derive the object var controlCboCommand = _commonInterface.DeriveControl(_pageCfsLogInterface.FuncDeriveControlCFSCboCommand); // Select 'ASSIGN' in the combobox controlCboCommand.ClickItem("ASSIGN");428Views0likes0CommentsUnable to create a TestLeft project using Visual Studio
I have Visual Studio Professional 2022 (version 17.2.2) and TestLeft version 15.40.421 installed. When I attempt to create a TestLeft project with the template 'TestLeft MS Project' or 'TestLeft NUnit Project' I get an error message: any idea how to resolve?2 years agoPlace TestLeft QuestionsTestLeft Questions918Views0likes1Comment