Identifying the MobileElement by “ClassName ”. It takes String as an argument. If an element isn't identified it throws an exception as No Such Element Exception.
Syntax : driver.find_element(AppiumBy.CLASS_NAME,"Locator_Value")
Let us see how to access the button using the Class name locator.
Example: In the below example we are launching the app on an Android device and sending text on an edit box using Class Name locator.
ByClassName.py
from appium import webdriver import time from appium.webdriver.common.appiumby import AppiumBy # Step 1 : Create "Desired Capabilities" desired_caps = {} desired_caps['platformName'] = 'Android' desired_caps['automationName'] = 'UiAutomator2' desired_caps['platformVersion'] = '10' desired_caps['deviceName'] = 'Pixel3XL' desired_caps['app'] = ('/Skill2Lead/Appium_Demo_App/Android/Android_Appium_Demo.apk') desired_caps['appPackage'] = 'com.skill2lead.appiumdemo' desired_caps['appActivity'] = 'com.skill2lead.appiumdemo.MainActivity' # Step 2 : Create "Driver object" driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub", desired_caps) # Step 3 : "Click on the button using ID locator value" ele_id = driver.find_element(AppiumBy.ID,"com.skill2lead.appiumdemo:id/EnterValue") ele_id.click() # Step 4 : Wait for 2 seconds time.sleep(2) # Step 5: Enter the text in editbox ele_classname = driver.find_element(AppiumBy.CLASS_NAME,"android.widget.EditText") ele_classname.click() ele_classname.send_keys("Skill2Lead") time.sleep(2) # Step 6 : Close the driver object driver.quit()