Find Elements
Search for multiple elements
Example Usage
List<MobileElement> elementsOne = (MobileElement) driver.findElementsByAccessibilityId("SomeAccessibilityID");
List<MobileElement> elementsTwo = (MobileElement) driver.findElementsByClassName("SomeClassName");
el = self.driver.find_elements_by_accessibility_id('SomeAccessibilityID')
// webdriver.io example
driver.elements("~SomeAccessibilityId");
// wd example
let elementsOne = await driver.elementsByAccessibilityId("SomeAccessibilityID");
let elementsTwo = await driver.elements("id", "SomeID");
@driver.find_elements("~SomeAccessibilityID")
// TODO C# sample
// TODO PHP sample
Selector Strategies
| Strategy | Description |
|---|---|
| Accessibility ID | Read a unique identifier for a UI element. For XCUITest it is the element's resource-id attribute. For Android it is the element's content-desc attribute. |
| Class name | For IOS it is the full name of the XCUI element and begins with XCUIElementType. For Android it is the full name of the UIAutomator2 class (e.g.: android.widget.TextView) |
| ID | Native element identifier. For Android it is |
| Name | Name of element |
| XPath | Search the app XML source using xpath (not recommended, has performance issues) |
| Android UiAutomator | Use the UI Automator API, in particular the UiSelector class to locate elements. In Appium you send the Java code, as a string, to the server, which executes it in the application’s environment, returning the element or elements. |
| IOS UIAutomation | When automating an iOS application, Apple’s UI Automation framework can be used to find elements |
Description
Get a list of elements that match the locator selector.
Support
Appium Server
| Platform | Driver | Platform Versions | Appium Version | Driver Version |
|---|---|---|---|---|
| iOS | XCUITest | 9.3+ | 1.6.0+ | All |
| UIAutomation | 8.0 to 9.3 | All | All | |
| Android | UiAutomator2 | ?+ | 1.6.0+ | All |
| UiAutomator | 4.2+ | All | All | |
| Mac | Mac | ?+ | 1.6.4+ | All |
| Windows | Windows | 10+ | 1.6.0+ | All |
Appium Clients
| Language | Support | Documentation |
|---|---|---|
| Java | All | seleniumhq.github.io |
| Python | All | selenium-python.readthedocs.io |
| Javascript (WebdriverIO) | All | webdriver.io |
| Javascript (WD) | All | github.com |
| Ruby | All | www.rubydoc.info |
| PHP | All | github.com |
| C# | All | github.com |
HTTP API Specifications
Endpoint
POST /wd/hub/session/:session_id/elements
URL Parameters
| name | description |
|---|---|
| session_id | ID of the session to route the command to |
JSON Parameters
| name | type | description |
|---|---|---|
| using | string |
The locator strategy to use |
| value | string |
The search target |
Response
A list of of JSON objects for the located elements (Array<String>)