These tests all run against online examples, so you can run them as soon as you install HTML5 Robot.

 Note: Support for Ext JS 5 available in HTML5 Robot 1.3 or later

Panel

Example Application: http://dev.sencha.com/extjs/5.0.0/examples/kitchensink/#basic-panels

Example Test: ExtJs5KitchenTestBase.java see testBasicPanel

extjs5_panel

Methods for look-up via ExtJs5XPathUtils

Component Method Description
Tool Icon/Button  findToolByPositionInHeaderByText(int position, String headerText)  XPath for getting the tool in the panel header by its 1-based position
Panel Body findPanelBodyByHeaderText(String headerText)  XPath for getting the panel body of a panel with the header containing the given text

Array Grid

Example Application: http://dev.sencha.com/extjs/5.0.0/examples/kitchensink/#array-grid

Example Test: ExtJs5KitchenTestBase.java see testArrayGrid

array_grid

Methods for look-up via ExtJs5XPathUtils

Component Method Description
Header Cell findHeaderCellByPositionInGridByHeaderText(int position, String headerText) XPath for getting the header cell by its 1-based position within a grid with a header containing the given text
Grid Row findRowByPositionInGridByHeaderText(int position, String headerText) XPath for getting an entire row by its 1-based position within a grid with a header containing the given text
Grid Cell  findCellByRowAndColumnInGridByHeaderText(int row, int column, String headerText)  XPath for getting a cell by its row and column position with the grid with a header containing the given text
Action Icon  findActionIconByTooltipInRowInGridByHeaderText(String tooltip, int row, String headerText)  XPath for getting an action icon by its tooltip text, in the specified 1-based row, in the grid with a header containing the given text
All Rows findRowsInGridByHeaderText(String headerText)  XPath for getting all of the rows in the grid with the given header text

Message Box

Example Application: http://dev.sencha.com/extjs/5.0.0/examples/kitchensink/#message-box

Example Test: ExtJs5KitchenTestBase.java see testMessageBox

message_box

Methods for look-up via ExtJs5XPathUtils

Component Method Description
Message Box findMessageBox()  XPath for getting a message box (alert dialog), assuming it is the only one in the page.
Message Box Header  findMessageBoxHeader()  XPath for getting a message box's header
Message Box Body  findMessageBoxBody()  XPath for getting a message box's body
Button in Message Box  findMessageBoxButtonByText(String text)  XPath for the message box button by its text
Toast  findToast()  XPath for getting the toast component, assuming there is only one in the screen
Input in Message Box  findInputByPositionInMessageBox(int position)  XPath for the input by its position in the message box
Text Area in Message Box  findTextAreaByPositionInMessageBox(int position)  XPath for the text area by its position in the message box

Grid with Paging Progress Bar

Example Application: http://dev.sencha.com/extjs/5.0.0/examples/kitchensink/#progress-bar-pager

Example Test: ExtJs5KitchenTestBase.java see testGridProgressBar

Methods for look-up via ExtJs5XPathUtils

progress_bar_pager

Component Method Description
Paging Toolbar  findPagingToolbarInGridByHeaderText(String headerText)  XPath for getting the paging toolbar in the grid with the given header text
Button in Paging Toolbar  findButtonByPositionInPagingToolbarInGridByHeaderText(int position, String headerText)  XPath for the Button by position in the Paging Toolbar In the grid by header text

Grid with Slider Pager

Example Application: http://dev.sencha.com/extjs/5.0.0/examples/kitchensink/#sliding-pager

Example Test: ExtJs5KitchenTestBase.java see testGridSlidingPager

Methods for look-up via ExtJs5XPathUtils

sliding_pager

Component Method Description
Slider Thumb in Paging Toolbar  findSliderThumbInPagingToolbarInGridByHeaderText(String headerText)  XPath for getting the slider thumb in the paging toolbar of the grid with the given header text

Grid with Plugins

Example Application: http://dev.sencha.com/extjs/5.0.0/examples/kitchensink/#grid-plugins

Example Test: ExtJs5KitchenTestBase.java see testGridPlugins

Methods for look-up via ExtJs5XPathUtils

grid_plugins

Component Method Description
Grid Row Expander  findExpanderByRowInGridByHeaderText(int row, String headerText)  XPath for getting the expand/collapse widget in the specific row in the grid with the specific header text
Row Body  findRowBodyByRowPositionInGridByHeaderText(int row, String headerText)  XPath for getting the row body (post row expansion) by the row position in the grid with the header of the given text
Toolbar in Grid findToolbarInGridByHeaderText(String headerText)  XPath for getting the toolbar in the grid by header text
Button in Toolbar in Grid findButtonByTextInToolbarInGridByHeaderText(String buttonText, String headerText)  XPath for getting the button by its text in the toolbar of the grid with the given text

Buttons

Example Application: http://dev.sencha.com/extjs/5.0.0/examples/kitchensink/#basic-buttons

Example Test: ExtJs5KitchenTestBase.java see testButtons

Methods for look-up via ExtJs5XPathUtils

basic_buttons

Component Method Description
Button  findButtonByText(String text)  XPath for getting the button by its text
Button  findButtonByTextAndOccurrence(String text, int occurrence)  XPath for getting a button by its text and then by its occurrence. This is for when you have several buttons with the same text on the same page.

Combo Box

Example Application: http://dev.sencha.com/extjs/5.0.0/examples/kitchensink/#form-combos

Example Test: ExtJs5KitchenTestBase.java see testComboBoxes

Methods for look-up via ExtJs5XPathUtils

combo_box

Component Method Description
Combo Box  findComboBoxByOccurrence(int occurrence)  XPath for getting a combo box by its occurrence in the page
Combo Box  findComboBoxByFormLabel(String label)  XPath for getting a combo box by its form label
Combo Box Button  findComboBoxButtonByFormLabel(String label)  XPath for getting a combo box button by its form label
Combo Box Button  findComboBoxButtonByOccurrence(int occurrence)  XPath for getting a combo box button by its occurrence in the page
Combo Box Popup  findComboBoxPopup()  XPath for getting the visible combo box popup within the page
Combo Box Popup Item  findComboBoxItemByRow(int row)  XPath for getting a combo box item by its row position in the combo box popup

 

Text Input

Example Application: http://dev.sencha.com/extjs/5.0.0/examples/kitchensink/#form-fieldtypes

Example Test: ExtJs5KitchenTestBase.java see testFieldTypes

Note that basic inputs can be obtained through general html methods.

Methods for look-up via ExtJs5XPathUtils

form_fields

Component Method Description
Input  findInputByName(String name)  XPath for getting an input by its name
Input  findInputByFormLabel(String label)  findInputByFormLabel(String label)
Label  findLabelByText(String text)  XPath for getting a label that contains the given text

Number based inputs also work as regular inputs.

See Example Application http://dev.sencha.com/extjs/5.0.0/examples/kitchensink/#form-number

With Example test  ExtJs5KitchenTestBase.java with testNumberFields

number_fields

Text Area

Example Application: http://dev.sencha.com/extjs/5.0.0/examples/kitchensink/#form-fieldtypes

Example Test: ExtJs5KitchenTestBase.java with testFieldTypes

Note that basic text areas can be obtained through general html methods.

Methods for look-up via ExtJs5XPathUtils

form_fields

Component Method Description
Text Area  findTextAreaByFormLabel(String label)  XPath for getting a text area by its form label
Text Area  findTextAreaByName(String name)  XPath for getting a text area by its name

 

File Input

Example Application: http://dev.sencha.com/extjs/5.0.0/examples/kitchensink/#form-fieldtypes

Example Test: ExtJs5KitchenTestBase.java see testFieldTypes

Methods for look-up via ExtJs5XPathUtils

form_fields

Component Method Description
File Input  findFileFieldByButtonText(String text)  findFileFieldByButtonText(String text)

Checkbox

Example Application: http://dev.sencha.com/extjs/5.0.0/examples/kitchensink/#form-fieldtypes

Example Test: ExtJs5KitchenTestBase.java see testFieldTypes

Methods for look-up via ExtJs5XPathUtils

form_fields

Component Method Description
Checkbox  findCheckboxByFormLabel(String label)  XPath for getting the checkbox with the specific label within a form

Radio Button

Example Application: http://dev.sencha.com/extjs/5.0.0/examples/kitchensink/#form-fieldtypes

Example Test: ExtJs5KitchenTestBase.java see testFieldTypes

Methods for look-up via ExtJs5XPathUtils

form_fields

Component Method Description
Radio  findRadioByLabel(String label)  XPath for getting a radio button by its label

Date Picker and Month Picker

Example Application: http://dev.sencha.com/extjs/5.0.0/examples/kitchensink/#form-date

Example Test: ExtJs5KitchenTestBase.java see testDateFields

Methods for look-up via ExtJs5XPathUtils

date_picker

Component Method Description
Date Picker  findDatePickerByOccurrence(int occurrence)  XPath for getting a date picker by its occurrence in the page
Date Picker Previous Button  findPrevButtonInDatePickerByOccurrence(int occurrence)  XPath for getting the previous month button in the date picker by its occurrence in the page
Date Picker Next Button findNextButtonInDatePickerByOccurrence(int occurrence)  XPath for getting the next month button in the date picker by its occurrence in the page
Date Picker Month Button  findMonthButtonInDatePickerByOccurrence(int occurrence)  XPath for getting the month button in the date picker by its occurrence in the page
Date Picker Day Button  findDayButtonByTextInDatePickerByOccurrence(String text, int occurrence)  XPath for getting the day button of the given text (like 27) in the date picker by its occurrence in the page
Month Picker  findMonthPickerByOccurrence(int occurrence)  XPath for getting the month picker by its occurrence in the page
Month/Year Button in Month Picker  findMonthOrYearButtonByTextInMonthPickerByOccurrence(String text, int occurrence)  XPath for getting the month of year button by its text in the month picker by its occurrence in the page
Month Picker Button  findButtonByTextInMonthPickerByOccurrence(String text, int occurrence)  XPath for getting the button by its text in the month picker by its occurrence in the page

Menu Button

Example Application: http://dev.sencha.com/extjs/5.0.0/examples/kitchensink/#menu-buttons

Example Test: ExtJs5KitchenTestBase.java see testMenuButtons

Methods for look-up via ExtJs5XPathUtils

menu_buttons

Component Method Description
Button Menu  findButtonMenu()  XPath for getting visible button menu in the current page
Button Menu Option  findOptionByTextInButtonMenu(String text)  XPath for getting the option by the given text in the current visible button menu

The buttons themselves are just plain buttons.

Another Example Application: http://dev.sencha.com/extjs/5.0.0/examples/kitchensink/#basic-toolbar

Another Test: ExtJs5KitchenTestBase.java see testToolbar

basic_toolbar

 

Slider

Example Application: http://dev.sencha.com/extjs/5.0.0/examples/kitchensink/#slider-field

Example Test: ExtJs5KitchenTestBase.java see testSliders

Methods for look-up via ExtJs5XPathUtils

sliders

Component Method Description
Slider Thumb findSliderThumbByOccurrence(int occurrence)  XPath for getting the slider thumb by its occurrence in the page
Slider Thumb  findSliderThumbByFormLabel(String label)  XPath for getting the slider thumb by its form label

 

Drag and Drop

Example Application: http://dev.sencha.com/extjs/5.0.0/examples/kitchensink/#dd-field-to-grid

Example Test: ExtJs5KitchenTestBase.java see testDragAndDrop

drag_and_drop

Drag and Drop is not a component, it is a type of action.

There are two ways to do a drag and drop:

  1. Drag some component by an X and Y amount
  2. Drag some component onto another component

See TestUtils for more information.

 

Multi Selector

Example Application: http://dev.sencha.com/extjs/5.0.0/examples/kitchensink/#multi-selector

Example Test: ExtJs5KitchenTestBase.java see testMultiSelector

Methods for look-up via ExtJs5XPathUtils

multi_selector

Component Method Description
Multi Selector  findMultiSelectorDialog()  XPath for getting the multi selector dialog
Multi Selector Input  findInputInMultiSelectorDialog()  findInputInMultiSelectorDialog()
Multi Selector Row  findRowByPositionInMultiSelectorDialog(int row)  XPath for getting a row by position in the current multi selector dialog
Grid ToolTip Icon  findToolTipInRowByPositionInGridByHeaderText(String tooltip, int row, String headerText)  XPath for getting a tooltip in the row by position in the grid by header text

Links

Links can be used to refer to anything that is an HTML “A” tag containing text. In Ext JS 5 this works for both buttons and text based links.

Just about every example deals with a link.

Component Method Description
Link findLinkByText(String text)  XPath for getting a link by its text content

Multi Sort Data View

Example Application: http://dev.sencha.com/extjs/5.0.0/examples/kitchensink/#dataview-multisort

Example Test: ExtJs5KitchenTestBase.java see testDataViewMultiSort

multisort_dataview

Methods for look-up via ExtJs5XPathUtils

Component Method Description
Data View Item  findDataViewItemByOccurrence(int occurrence)  XPath for getting the Data View item by its occurrence in the page. Note that items flow in a multi sort grid from left to right and then top to bottom.

Tree

Example Application: http://dev.sencha.com/extjs/5.0.0/examples/kitchensink/#check-tree

Example Test: ExtJs5KitchenTestBase.java see testCheckTree

check_tree

Methods for look-up via ExtJs5XPathUtils

Component Method Description
Row  findRowByTextInGridByHeaderText(String rowText, String headerText)  XPath for getting a row by its text in the grid with the given header text
Row Expansion Node  findExpanderInRowInGridByHeaderText(int row, String headerText)  Xpath for getting the expander icon in the given row in the grid with the given header text
Row Input findInputInRowInGridByHeaderText(int row, String headerText)  Xpath for getting the input field in the given row in the grid with the given header text

Responsive Menu

Example Application: http://dev.sencha.com/extjs/5.0.0/examples/executive-dashboard/index.html

Example Test: ExtJs5ExecutiveDashboardTestBase.java see testKpiOverview

responsive

Methods for look-up via ExtJs5XPathUtils

Component Method Description
Responsive Menu Button  findReponsiveMenuButton()  XPath for getting the responsive menu button when present
Responsive Menu Item  findResponsiveMenuItemByText(String text)  XPath for getting a responsive menu item by its text

Dynamic Grid

Example Application: http://dev.sencha.com/extjs/5.0.0/examples/executive-dashboard/index.html

Example Test: ExtJs5ExecutiveDashboardTestBase.java see testProfitAndLess

profit_and_loss

Methods for look-up via ExtJs5XPathUtils

Component Method Description
Group (generally meaning left side or right side) findGroupInDynamicGrid(int group, int occurrence)  XPath for getting an entire group in a dynamic grid by occurrence
Header Cell  findHeaderCellInDynamicGrid(int position, int group, int occurrence)  XPath for getting a header cell by its position in a group in a dynamic grid
Body Cell  findBodyCellInDynamicGrid(int position, int group, int occurrence)  XPath for getting a body cell by its position (row) in the group of a dynamic grid
Group Header  findGroupHeaderInDynamicGrid(String text, int occurrence)  XPath for getting a group header in a dynamic grid