Article From:https://www.cnblogs.com/jiaoyang77/p/9125129.html

http://www.cnblogs.com/yoyoketang/p/6189441.html#commentform

Preface:

    Appium Python APIComplete works, do not know which God finishing, here posted to share with you.

1.contexts

contexts(self):

    Returns the contexts within the current session.

    Returns the context in the current session and controls the H5 page after use.

    :Usage:

        driver.contexts

Usage driver.contexts

2. current_context

current_context(self):

    Returns the current context of the current session.

    Return the current context of the current session

    :Usage:

        driver.current_context

Usage driver. current_context

3. context

context(self):

    Returns the current context of the current session.

    Returns the current context of the current session.

    :Usage:

        driver.context

Usage driver. Context

4. find_element_by_ios_uiautomation

find_element_by_ios_uiautomation(self, uia_string):

Finds an element by uiautomation in iOS.

    Find elements through the iOS uiautomation

    :Args:

     – uia_string – The element name in the iOS UIAutomation library

    :Usage:

        driver.find_element_by_ios_uiautomation(‘.elements()[1].cells()[2]’)

Usage Dr. find_element_by_ios_uiautomation (“elements”)

5. find_element_by_accessibility_id

find_element_by_accessibility_id(self, id):

Finds an element by accessibility id.

    Find elements through the accessibility ID

    :Args:

     – id – a string corresponding to a recursive element search using the

     Id/Name that the native Accessibility options utilize

    :Usage:

        driver.find_element_by_accessibility_id()

Usage driver.find_element_by_accessibility_id (“Id”)

6.scroll

scroll(self, origin_el, destination_el):

Scrolls from one element to another

    Rolling from element origin_el to element destination_el

    :Args:

     – originalEl – the element from which to being scrolling

     – destinationEl – the element to scroll to

    :Usage:

        driver.scroll(el1, el2)

Usage driver.scroll (el1, EL2)

7. drag_and_drop

drag_and_drop(self, origin_el, destination_el):

Drag the origin element to the destination element

    Drag the element origin_el to the target element destination_el

    :Args:

     – originEl – the element to drag

     – destinationEl – the element to drag to

Usage driver.drag_and_drop (el1, EL2)

8.tap

tap(self, positions, duration=None):

Taps on an particular place with up to five fingers, holding for a certain time

Simulate finger clicks (up to five fingers) and set the hold time length (milliseconds).

    :Args:

     – positions – an array of tuples representing the x/y coordinates of

     the fingers to tap. Length can be up to five.

     – duration – (optional) length of time to tap, in ms

    :Usage:

        driver.tap([(100, 20), (100, 60), (100, 100)], 500)

Usage driver.tap ([((x, y), (x1, Y1)], 500)

9. swipe

swipe(self, start_x, start_y, end_x, end_y, duration=None):

Swipe from one point to another point, for an optional duration.

    Slide from the A point to the B point, and the slipping time is milliseconds

    :Args:

     – start_x – x-coordinate at which to start

     – start_y – y-coordinate at which to start

     – end_x – x-coordinate at which to stop

     – end_y – y-coordinate at which to stop

     – duration – (optional) time to take the swipe, in ms.

    :Usage:

        driver.swipe(100, 100, 100, 400)

Usage driver.swipe (x1, Y1, X2, y2500)

10.flick

flick(self, start_x, start_y, end_x, end_y):

Flick from one point to another point.

    Quickly slide to B point after holding the A point

    :Args:

     – start_x – x-coordinate at which to start

     – start_y – y-coordinate at which to start

     – end_x – x-coordinate at which to stop

     – end_y – y-coordinate at which to stop

    :Usage:

        driver.flick(100, 100, 100, 400)

Usage driver.flick (x1, Y1, X2, Y2)

11.pinch

pinch(self, element=None, percent=200, steps=50):

Pinch on an element a certain amount

    Perform analog double finger pinching on elements.

    :Args:

     – element – the element to pinch

     – percent – (optional) amount to pinch. Defaults to 200%

     – steps – (optional) number of steps in the pinch action

    :Usage:

        driver.pinch(element)

Usage driver.pinch (element)

12.zoom

zoom(self, element=None, percent=200, steps=50):

Zooms in on an element a certain amount

    Executing the magnifying operation on the element

    :Args:

     – element – the element to zoom

     – percent – (optional) amount to zoom. Defaults to 200%

     – steps – (optional) number of steps in the zoom action

    :Usage:

        driver.zoom(element)

Usage driver.zoom (element)

13.reset

reset(self):

Resets the current application on the device.

Reset the application (similar to delete application data)

Use driver.reset ()

14. hide_keyboard

hide_keyboard(self, key_name=None, key=None, strategy=None):

Hides the software keyboard on the device. In iOS, use `key_name` to press a particular key, or `strategy`. In Android, no parameters are used.

    Hidden keyboard, iOS uses key_name to hide, Android does not use parameters.

    :Args:

     – key_name – key to press

     – strategy – strategy for closing the keyboard (e.g., `tapOutside`)

driver.hide_keyboard()

15. keyevent

keyevent(self, keycode, metastate=None):

Sends a keycode to the device. Android only. Possible keycodes can be found in http://developer.android.com/reference/android/view/KeyEvent.html.

    Send key code (Android only), key code can be found in the Internet address.

    :Args:

     – keycode – the keycode to be sent to the device

     – metastate – meta information about the keycode being sent

Use dr.keyevent (‘4’)

16. press_keycode

press_keycode(self, keycode, metastate=None):

Sends a keycode to the device. Android only. Possible keycodes can be found in http://developer.android.com/reference/android/view/KeyEvent.html.

    Send key code (Android only), key code can be found in the Internet address.

    :Args:

     – keycode – the keycode to be sent to the device

     – metastate – meta information about the keycode being sent

Use driver.press_ keycode (‘4’)

dr.keyevent(‘4’)Just like the function of driver.press_ keycode (4 ‘), the return key is pressed.

17. long_press_keycode

long_press_keycode(self, keycode, metastate=None):

Sends a long press of keycode to the device. Android only. Possible keycodes can be

    found in http://developer.android.com/reference/android/view/KeyEvent.html.

    Send a long pressed key code (long press a key)

    :Args:

     – keycode – the keycode to be sent to the device

     – metastate – meta information about the keycode being sent

 Use driver.long_press_keycode (‘4’)

18.current_activity

current_activity(self):

Retrieves the current activity on the device.

Get the current activity

Use print (driver.current_activity ())

19. wait_activity

wait_activity(self, activity, timeout, interval=1):

Wait for an activity: block until target activity presents or time out.

    This is an Android-only method.

    Wait for the specified activity to appear until the timeout, and interval is the interval of 1 sec.

That is, to get a current activity every few seconds

Returned True or False

    :Agrs:

     – activity – target activity

     – timeout – max wait time, in seconds

     – interval – sleep interval between retries, in seconds

Usage driver.wait_activity (“.Activity.xxx”, 5,2)

20. background_app

background_app(self, seconds):

Puts the application in the background on the device for a certain duration.

    How many seconds to run app in the background

    :Args:

     – seconds – the duration for the application to remain in the background

Use driver.background_app (5) to set up the background for 5 seconds before running.

21.is_app_installed

is_app_installed(self, bundle_id):

Checks whether the application specified by `bundle_id` is installed on the device.

    Check whether the app is installed

Return to True or False

    :Args:

     – bundle_id – the id of the application to query

Use driver.is_app_installed (“com.xxxx”)

22.install_app

install_app(self, app_path):

Install the application found at `app_path` on the device.

    Install app, app_path to install the package path

    :Args:

     – app_path – the local or remote path to the application to install

Usage driver.install_app (app_path)

23.remove_app

remove_app(self, app_id):

Remove the specified application from the device.

    Delete app

    :Args:

     – app_id – the application id to be removed

Use driver.remove_app (“com.xxx.”)

24.launch_app

launch_app(self):

Start on the device the application specified in the desired capabilities.

Start app

Use driver.launch_app ()

25.close_app

close_app(self):

Stop the running application, specified in the desired capabilities, on the device.

Shut down app

Use driver.close_app ()

It seems to be wrong to start and close the app run

26. start_activity

start_activity(self, app_package, app_activity, **opts):

Opens an arbitrary activity during a test. If the activity belongs to

    another application, that application is started and the activity is opened.

    This is an Android-only method.

    Open any activity during the test. If the activity belongs to another application, the startup and activity of the application are opened.

This is a Android method

    :Args:

    – app_package – The package containing the activity to start.

    – app_activity – The activity to start.

    – app_wait_package – Begin automation after this package starts (optional).

    – app_wait_activity – Begin automation after this activity starts (optional).

    – intent_action – Intent to start (optional).

    – intent_category – Intent category to start (optional).

    – intent_flags – Flags to send to the intent (optional).

    – optional_intent_arguments – Optional arguments to the intent (optional).

    – stop_app_on_reset – Should the app be stopped on reset (optional)?

Usage driver.start_activity (app_package, app_activity)

27.lock

lock(self, seconds):

Lock the device for a certain period of time. iOS only.

    Lock screen for a period of time iOS proprietary

    :Args:

     – the duration to lock the device, in seconds

Use driver.lock ()

28.shake

shake(self):

Shake the device.

Shake a mobile phone

Use driver.shake ()

29.open_notifications

open_notifications(self):

Open notification shade in Android (API Level 18 and above)

System notification column (Android system only supporting API 18 above)

Use driver.open_notifications ()

30.network_connection

network_connection(self):

Returns an integer bitmask specifying the network connection type.

    Android only.

Return network type

    Possible values are available through the enumeration `appium.webdriver.ConnectionType`

Usage driver.network_connection

31. set_network_connection

set_network_connection(self, connectionType):

Sets the network connection type. Android only.

    Possible values:

        Value (Alias)      | Data | Wifi | Airplane Mode

        ————————————————-

        0 (None)           | 0    | 0    | 0

        1 (Airplane Mode)  | 0    | 0    | 1

        2 (Wifi only)      | 0    | 1    | 0

        4 (Data only)      | 1    | 0    | 0

        6 (All network on) | 1    | 1    | 0

    These are available through the enumeration appium.webdriver.ConnectionType`

    Setting network type

    :Args:

     – connectionType – a member of the enum appium.webdriver.ConnectionType

First, load from appium.webdriver.connectiontype import ConnectionType.

dr.set_network_connection(ConnectionType.WIFI_ONLY)

ConnectionTypeThere are types of

NO_CONNECTION = 0

AIRPLANE_MODE = 1

WIFI_ONLY = 2

DATA_ONLY = 4

ALL_NETWORK_ON = 6

32. available_ime_engines

available_ime_engines(self):

Get the available input methods for an Android device. Package and activity are returned (e.g., [‘com.android.inputmethod.latin/.LatinIME’])

    Android only.

Return the input method available to the Android device

Usage print (driver.available_ime_engines)

33.is_ime_active

is_ime_active(self):

Checks whether the device has IME service active. Returns True/False.

    Android only.

Check whether the equipment has an input service activity. Return to true / false.

Android

Use print (driver.is_ime_active ())

34.activate_ime_engine

activate_ime_engine(self, engine):

Activates the given IME engine on the device.

    Android only.

    Activate the specified input method in Android device. The device can be obtained from “available_ime_engines” by input method.

    :Args:

     – engine – the package and activity of the IME engine to activate (e.g.,

        ‘com.android.inputmethod.latin/.LatinIME’)

Usage driver.activate_ime_engine (“com.android.inputmethod.latin/.LatinIME”)

35.deactivate_ime_engine

deactivate_ime_engine(self):

Deactivates the currently active IME engine on the device.

    Android only.

Closing the current input method for the Android device

Use driver.deactivate_ime_engine ()

36.active_ime_engine

active_ime_engine(self):

Returns the activity and package of the currently active IME engine (e.g.,

    ‘com.android.inputmethod.latin/.LatinIME’).

    Android only.

    Return the package name of the current input method

Usage driver.active_ime_engine

37. toggle_location_services

toggle_location_services(self):

Toggle the location services on the device. Android only.

Open the location setting on the Android device

Use driver.toggle_location_services ()

38.set_location

set_location(self, latitude, longitude, altitude):

Set the location of the device

    Setting up the latitude and longitude of the equipment

    :Args:

     – latitudeLatitude String or numeric value between -90.0 and 90

     – longitudeLongitude String or numeric value between -180.0 and 180

     – altitudeAltitude – String or numeric value

Usage driver.set_location (latitude, longitude, height)

39.tag_name

tag_name(self):

This element’s “tagName“ property.

Return the tagName attribute of the element

Class name is returned by practice

Use element.tag_name ()

40.text

text(self):

The text of the element.

    Return the text value of the element

Use element.text ()

41.click

click(self):

Clicks the element.

  Click the element

Use element.click ()

42.submit

submit(self):

Submits a form.

    Submit Form

No use

43.clear

clear(self):

Clears the text if it’s a text entry element.

    Clear the content of the input

Use element.clear ()

44.get_attribute

get_attribute(self, name):

See @chenhengjie123 hyperlinks in detail

Gets the given attribute or property of the element.

1、The way to get content-desc is get_attribute (“name”), and it does not guarantee that the return must be content-desc (content-desc will return to the text property value when the content-desc is empty. “)

2、get_attribute The method is not available for all the attributes we see in uiautomatorviewer (the name here is the name of the attribute used when get_attribute):

Available:

String type:

name(Return to content-desc or text)

text(Return to text)

className(Return to class, only API=> 18 can be supported)

resourceId(Return to resource-id, only API=> 18 to support)

    This method will first try to return the value of a property with the

    given name. If a property with that name doesn’t exist, it returns the

    value of the attribute with the same name. If there’s no attribute with

    that name, “None“ is returned.

    Values which are considered truthy, that is equals “true” or “false”,

    are returned as booleans.  All other non-“None“ values are returned

    as strings.  For attributes or properties which do not exist, “None“

    is returned.

    :Args:

        – name – Name of the attribute/property to retrieve.

    Example::

        # Check if the “active” CSS class is applied to an element.

        is_active = “active” in target_element.get_attribute(“class”)

No use

45.is_selected

is_selected(self):

Returns whether the element is selected.

    Can be used to check if a checkbox or radio button is selected.

Whether or not the element is selected.

It can be used to check a check box or radio buttons to be selected.

Use element.is_slected ()

46.is_enabled

is_enabled(self):

Returns whether the element is enabled.

    Whether the return element is available with True of False

Use element.is_enabled ()

47.find_element_by_id

find_element_by_id(self, id_):

Finds element within this element’s children by ID.

    ID positioning elements through the element

    :Args:

        – id_ – ID of child element to locate.

Use driver. find_element_by_id (“Id”)

48. find_elements_by_id

find_elements_by_id(self, id_):

Finds a list of elements within this element’s children by ID.

    Locate all elements containing the attribute by element ID.

    :Args:

        – id_ – Id of child element to find.

Use driver. find_elements_by_id (“Id”)

49. find_element_by_name

find_element_by_name(self, name):

Finds element within this element’s children by name.

     Locate by element Name (element name attribute text)

    :Args:

        – name – name property of the element to find.

Use driver.find_element_by_name (“name”)

50. find_elements_by_name

find_elements_by_name(self, name):

Finds a list of elements within this element’s children by name.

    Locate all elements containing the attribute through element Name positioning (element name attribute text).

    :Args:

        – name – name property to search for.

Use driver.find_element_by_name (“name”)

51. find_element_by_link_text

find_element_by_link_text(self, link_text):

Finds element within this element’s children by visible link text.

    Text location by element visible link

    :Args:

        – link_text – Link text string to search for.

Usage driver.find_element_by_link_text (“text”)

52. find_elements_by_link_text

find_element_by_link_text(self, link_text):

 Finds a list of elements within this element’s children by visible link text

    Locate all elements that contain this attribute by element visible link text location.

    :Args:

        – link_text – Link text string to search for.

Usage driver.find_elements_by_link_text (“text”)

53. find_element_by_partial_link_text

find_element_by_partial_link_text(self, link_text):

Finds element within this element’s children by partially visible link text.

    Visible link text location through the element part

    :Args:

        – link_text – Link text string to search for.

driver. find_element_by_partial_link_text(“text”)

54. find_elements_by_partial_link_text

find_elements_by_partial_link_text(self, link_text):

Finds a list of elements within this element’s children by link text.

    Localize all elements containing the attribute through the visible link text of the element part.

    :Args:

        – link_text – Link text string to search for.

driver. find_elements_by_partial_link_text(“text”)

55. find_element_by_tag_name

find_element_by_tag_name(self, name):

Finds element within this element’s children by tag name.

    Locate the element by finding the name of the HTML’s label

    :Args:

        – name – name of html tag (eg: h1, a, span)

Usage: driver.find_element_by_tag_name (“name”)

56. find_elements_by_tag_name

find_elements_by_tag_name(self, name):

Finds a list of elements within this element’s children by tag name.

   Locate all the elements by finding the name of the HTML’s label

    :Args:

        – name – name of html tag (eg: h1, a, span)

Use driver.find_elements_by_tag_name (“name”)

57. find_element_by_xpath

find_element_by_xpath(self, xpath):

Finds element by xpath.

    Through Xpath positioning elements, detailed methods can be seen in http://www.w3school.com.cn/xpath/

    :Args:

        xpath – xpath of element to locate.  “//input[@class=’myelement’]”

    Note: The base path will be relative to this element’s location.

    This will select the first link under this element.

    ::

        myelement.find_elements_by_xpath(“.//a”)

    However, this will select the first link on the page.

    ::

        myelement.find_elements_by_xpath(“//a”)

Use find_element_by_xpath (“/ / *”)

58. find_elements_by_xpath

find_elements_by_xpath(self, xpath):

Finds elements within the element by xpath.

    :Args:

        – xpath – xpath locator string.

    Note: The base path will be relative to this element’s location.

    This will select all links under this element.

    ::

        myelement.find_elements_by_xpath(“.//a”)

    However, this will select all links in the page itself.

    ::

        myelement.find_elements_by_xpath(“//a”)

Use find_elements_by_xpath (“/ / *”)

59. find_element_by_class_name

find_element_by_class_name(self, name):

Finds element within this element’s children by class name.

    Locating elements through the element class name attribute

    :Args:

        – name – class name to search for.

Usage driver. find_element_by_class_name (“android.widget.LinearLayout”)

60. find_elements_by_class_name

find_elements_by_class_name(self, name):

Finds a list of elements within this element’s children by class name.

    Locate all elements containing the attribute through the element class name attribute.

    :Args:

        – name – class name to search for.

Usage driver. find_elements_by_class_name (“android.widget.LinearLayout”)

61. find_element_by_css_selector

find_element_by_css_selector(self, css_selector):

Finds element within this element’s children by CSS selector.

    Locating elements through the CSS selector

    :Args:

        – css_selector – CSS selctor string, ex: ‘a.nav#home’

62.send_keys

send_keys(self, *value):

Simulates typing into the element.

    Analog input in the element (open the appium input method and configure the appium input method, you can type in Chinese and English).

    :Args:

        – value – A string for typing, or setting form fields.  For setting

        file inputs, this could be a local file path.

    Use this to send simple key events or to fill out form fields::

        form_textfield = driver.find_element_by_name(‘username’)

        form_textfield.send_keys(“admin”)

    This can also be used to set file inputs.

    ::

        file_input = driver.find_element_by_name(‘profilePic’)

        file_input.send_keys(“path/to/profilepic.gif”)

        # Generally it’s better to wrap the file path in one of the methods

        # in os.path to return the actual path to support cross OS testing.

        # file_input.send_keys(os.path.abspath(“path/to/profilepic.gif”))

driver.element.send_keys(“Chinese and English “)

63. is_displayed

is_displayed(self):

Whether the element is visible to a user.   

Whether this element is visible to the user. Simply that it’s the hidden element and the control that blocks the inoperable elements (only Selenium, whether appium implements a similar function is not too sure) and this one will return to False

Use driver.element.is_displayed ()

64. location_once_scrolled_into_view

location_once_scrolled_into_view(self):

 “””THIS PROPERTY MAY CHANGE WITHOUT WARNING. Use this to discover

    where on the screen an element is so that we can click it. This method

    should cause the element to be scrolled into view.

    Returns the top lefthand corner location on the screen, or “None“ if

    the element is not visible.

    I don’t know how to use it for the time being

    “””

65.size

size(self):

The size of the element.

Get the size of the element (Gao Hekuan)

new_size[“height”] = size[“height”]

new_size[“width”] = size[“width”]

Usage driver.element.size

66. value_of_css_property

value_of_css_property(self, property_name):

The value of a CSS property.

CSSattribute

Usage for the time being

67.location

location(self):

The location of the element in the renderable canvas.

    Get the coordinates of the upper left corner of the element

Usage driver.element.location

”’Return to the X coordinates of element, int type ”

driver.element.location.get(‘x’)

”’Return to the Y coordinates of element, int type ”

driver.element.location.get(‘y’)

68.rect

rect(self):

A dictionary with the size and location of the element.

    A dictionary of the size and position of an element

69. screenshot_as_base64

screenshot_as_base64(self):

    Gets the screenshot of the current element as a base64 encoded string.

    Gets the screenshot of the current element encoded by Base64 string.

    :Usage:

        img_b64 = element.screenshot_as_base64

70.execute_script

execute_script(self, script, *args):

    Synchronously Executes JavaScript in the current window/frame.

Synchronously execute JavaScript code in the current window / framework (specifically referred to as iframe of Html). You can understand that if the code is sleeping for 5 seconds, the JavaScript of the main thread will not be executed in five seconds.

    :Args:

     – script: The JavaScript to execute.

     – \*args: Any applicable arguments for your JavaScript.

    :Usage:

        driver.execute_script(‘document.title’)

71.execute_async_script

execute_async_script(self, script, *args):

    Asynchronously Executes JavaScript in the current window/frame.

Insert the JavaScript code, but this is asynchronous, that is if your code is sleeping for 5 seconds, then you’re sleeping by yourself, and the other JavaScript code of the page is executed as usual.

    :Args:

     – script: The JavaScript to execute.

     – \*args: Any applicable arguments for your JavaScript.

    :Usage:

        driver.execute_async_script(‘document.title’)

72.current_url

current_url(self):

    Gets the URL of the current page.

    Get the URL of the current page.

    :Usage:

        driver.current_url

Usage driver.current_url

73. page_source

page_source(self):

    Gets the source of the current page.

    Get the source of the current page.

    :Usage:

        driver.page_source

74.close

close(self):

    Closes the current window.

    Close the current window

    :Usage:

        driver.close()

75.quit

quit(self):

    Quits the driver and closes every associated window.

    Exit script to run and close each associated window connection.

    :Usage:

        driver.quit()

In the process of learning, there are questions, you can add appium (python+java) QQ group communication: 512200893

wordVersion, can also be downloaded in group attachments

Link of this Article: Appium+python automation

Leave a Reply

Your email address will not be published. Required fields are marked *