Skip to main content

No project description provided

Project description

🎉The Python Client of appium-uiautomator2-server

English | 简体中文

Background

At present, only one project appium-uiautomator2-client that bypasses Appium Server and interacts with appium-uiautomator2-server alone is seen on Github for Python, but it is not compatible The baseUrl of the latest appium-uiautomator2-server v5.x API has not been published on pypi. I tried to contact the author but there was no reply, so I decided to write a maintenance. For the Java version, you can see the sonic-driver-core maintained by our organization.

How to use

➡️More Document

  1. Install uiautomator2 server

You should install sonic-appium-uiautomator2-server.apk and sonic-appium-uiautomator2-server-test.apk in Here.

Alternatively, you can build your own Here

  1. Launch uiautomator2 server
adb shell am instrument -w io.appium.uiautomator2.server.test/androidx.test.runner.AndroidJUnitRunner
  1. Forward ports
adb forward tcp:6790 tcp:6790
  1. Install Depends
pip install -U sonic-uia2-client
  1. Write your script
from common.models import AndroidSelector
from uia2.driver import AndroidDriver
import os


class TestDriver:

    def __init__(self):
        self.uia_url = "http://localhost:6790"
        self.adb_serial_num = "DAISKnlasido"
        self.package_name = "com.android.settings"

    def test_demo(self):
        # launch App
        os.system(
            "adb -s {} shell monkey -p {} -c android.intent.category.LAUNCHER 1".format(self.adb_serial_num,
                                                                                        self.package_name))
        
        # connect remote uia2 server
        driver = AndroidDriver(self.uia_url)
        p = driver.get_page_source()
        print(p)
        e = driver.find_element(AndroidSelector.XPATH, "//*[@text='设置']")
        if e is not None:
            print(e.get_text())
            e.send_keys("Hello")

Thanks

LICENSE

LICENSE

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sonic_uia2_client-0.0.9.tar.gz (10.4 kB view hashes)

Uploaded Source

Built Distribution

sonic_uia2_client-0.0.9-py3-none-any.whl (11.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page