Search code examples
checkboxselectiontreeviewerjubula

Jubula - CheckboxTreeViewer with columns. Selecting specific Column & Row


We've recently converted an element in our Eclipse RCP application from a TableViewer into a CheckboxTreeViewer and are updating the GUI tests in Jubula.

However, The test are failing because they no longer recognize the CheckboxTreeviewer component as a table. And the Tree component (from what I can see) has no means of selecting a column & row (as our previous tests did) which would be helpful and Jubula doesn't recognize our component as a Table component which would allow for this action.

Any suggestions on how this might be achieved. Looking to select a Column 1 row 0 to select all rows. Want to click into a column and row to check the contents of a label. Also would like to arrow up / down selection in the checkboxTreeViewer rows and columns to test selection values. Selection by indexPath does not work as this essentially is a Treeviewer with columns like a table. It is not an SWT TreeTable, but a JFace CheckboxTreeviewer with column label providers.

Have tried to use the Observation mode to achieve this, but it does not recognize the component either.

Thanks for your help in advance.

  • Marv

Solution

  • In this case, I ended up Object Mapping each of the new CheckboxTreeViewers as a Tree Component and then using a Mouse Click - Test Step applied to that object which has the

    Component Type: Tree Component Component name: Object_Mapped_checkboxTreeViewer Action Type, "Click in Component".

    Since my specific Column to select has a listener for selecting all checks when mouse clicked, I set the test step settings with X position [Integer]: 2 and Y Position [Integer] 2 and left the x-units [String] and y-units [String] as defaults of "percent". The click will occur in the exact same position of the Tree Component each time, so this essentially acts as a button selection via mouse click

    Hope this helps others.