前言:
Appium Python API全集,不知道哪個大神整理的,這裡貼出來分享給大家。
1.contextscontexts(self):
Returns the contexts within the current session.
返回當前會話中的上下文,使用後可以識別H5頁面的控制項
:Usage:
driver.contexts
用法 driver.contexts
2. current_contextcurrent_context(self):
Returns the current context of the current session.
返回當前會話的當前上下文
:Usage:
driver.current_context
用法driver. current_context
3. contextcontext(self):
Returns the current context of the current session.
返回當前會話的當前上下文。
:Usage:
driver.context
用法driver. Context
4. find_element_by_ios_uiautomationfind_element_by_ios_uiautomation(self, uia_string):
Finds an element by uiautomation in iOS.
通過iOS uiautomation查找元素
:Args:
- uia_string - The element name in the iOS UIAutomation library
:Usage:
driver.find_element_by_ios_uiautomation('.elements()[1].cells()[2]')
用法dr. find_element_by_ios_uiautomation(『elements』)
5. find_element_by_accessibility_idfind_element_by_accessibility_id(self, id):
Finds an element by accessibility id.
通過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()
用法driver.find_element_by_accessibility_id(『id』)
6.scrollscroll(self, origin_el, destination_el):
Scrolls from one element to another
從元素origin_el滾動至元素destination_el
:Args:
- originalEl - the element from which to being scrolling
- destinationEl - the element to scroll to
:Usage:
driver.scroll(el1, el2)
用法 driver.scroll(el1,el2)
7. drag_and_dropdrag_and_drop(self, origin_el, destination_el):
Drag the origin element to the destination element
將元素origin_el拖到目標元素destination_el
:Args:
- originEl - the element to drag
- destinationEl - the element to drag to
用法 driver.drag_and_drop(el1,el2)
8.taptap(self, positions, duration=None):
Taps on an particular place with up to five fingers, holding for a certain time
模擬手指點擊(最多五個手指),可設置按住時間長度(毫秒)
: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)
用法 driver.tap([(x,y),(x1,y1)],500)
9. swipeswipe(self, start_x, start_y, end_x, end_y, duration=None):
Swipe from one point to another point, for an optional duration.
從A點滑動至B點,滑動時間為毫秒
: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)
用法 driver.swipe(x1,y1,x2,y2,500)
10.flickflick(self, start_x, start_y, end_x, end_y):
Flick from one point to another point.
按住A點後快速滑動至B點
: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)
用法 driver.flick(x1,y1,x2,y2)
11.pinchpinch(self, element=None, percent=200, steps=50):
Pinch on an element a certain amount
在元素上執行模擬雙指捏(縮小操作)
: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)
用法 driver.pinch(element)
12.zoomzoom(self, element=None, percent=200, steps=50):
Zooms in on an element a certain amount
在元素上執行放大操作
: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)
用法 driver.zoom(element)
13.resetreset(self):
Resets the current application on the device.
重置應用(類似刪除應用數據)
用法 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.
隱藏鍵盤,iOS使用key_name隱藏,安卓不使用參數
:Args:
- key_name - key to press
- strategy - strategy for closing the keyboard (e.g., `tapOutside`)
driver.hide_keyboard()
15. keyeventkeyevent(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.
發送按鍵碼(安卓僅有),按鍵碼可以上網址中找到
:Args:
- keycode - the keycode to be sent to the device
- metastate - meta information about the keycode being sent
用法 dr.keyevent(『4』)
16. press_keycodepress_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.
發送按鍵碼(安卓僅有),按鍵碼可以上網址中找到
:Args:
- keycode - the keycode to be sent to the device
- metastate - meta information about the keycode being sent
用法 driver.press_ keycode(『4』)
dr.keyevent(『4』)與driver.press_ keycode(『4』) 功能實現上一樣的,都是按了返回鍵
17. long_press_keycodelong_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.
發送一個長按的按鍵碼(長按某鍵)
:Args:
- keycode - the keycode to be sent to the device
- metastate - meta information about the keycode being sent
用法 driver.long_press_keycode(『4』)
18.current_activity
current_activity(self):
Retrieves the current activity on the device.
獲取當前的activity
用法 print(driver.current_activity())
19. wait_activitywait_activity(self, activity, timeout, interval=1):
Wait for an activity: block until target activity presents or time out.
This is an Android-only method.
等待指定的activity出現直到超時,interval為掃描間隔1秒
即每隔幾秒獲取一次當前的activity
返回的True 或 False
:Agrs:
- activity - target activity
- timeout - max wait time, in seconds
- interval - sleep interval between retries, in seconds
用法driver.wait_activity(『.activity.xxx』,5,2)
20. background_appbackground_app(self, seconds):
Puts the application in the background on the device for a certain duration.
後臺運行app多少秒
:Args:
- seconds - the duration for the application to remain in the background
用法 driver.background_app(5) 置後臺5秒後再運行
21.is_app_installedis_app_installed(self, bundle_id):
Checks whether the application specified by `bundle_id` is installed on the device.
檢查app是否有安裝
返回 True or False
:Args:
- bundle_id - the id of the application to query
用法 driver.is_app_installed(「com.xxxx」)
22.install_appinstall_app(self, app_path):
Install the application found at `app_path` on the device.
安裝app,app_path為安裝包路徑
:Args:
- app_path - the local or remote path to the application to install
用法 driver.install_app(app_path)
23.remove_appremove_app(self, app_id):
Remove the specified application from the device.
刪除app
:Args:
- app_id - the application id to be removed
用法 driver.remove_app(「com.xxx.」)
24.launch_applaunch_app(self):
Start on the device the application specified in the desired capabilities.
啟動app
用法 driver.launch_app()
25.close_appclose_app(self):
Stop the running application, specified in the desired capabilities, on the device.
關閉app
用法 driver.close_app()
啟動和關閉app運行好像會出錯
26. start_activitystart_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.
在測試過程中打開任意活動。如果活動屬於另一個應用程式,該應用程式的啟動和活動被打開。
這是一個安卓的方法
: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)?
用法 driver.start_activity(app_package, app_activity)
27.locklock(self, seconds):
Lock the device for a certain period of time. iOS only.
鎖屏一段時間 iOS專有
:Args:
- the duration to lock the device, in seconds
用法 driver.lock()
28.shake
shake(self):
Shake the device.
搖一搖手機
用法 driver.shake()
29.open_notificationsopen_notifications(self):
Open notification shade in Android (API Level 18 and above)
打系統通知欄(僅支持API 18 以上的安卓系統)
用法 driver.open_notifications()
30.network_connectionnetwork_connection(self):
Returns an integer bitmask specifying the network connection type.
Android only.
返回網絡類型 數值
Possible values are available through the enumeration `appium.webdriver.ConnectionType`
用法 driver.network_connection
31. set_network_connectionset_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`
設置網絡類型
:Args:
- connectionType - a member of the enum appium.webdriver.ConnectionType
用法 先加載from appium.webdriver.connectiontype import ConnectionType
dr.set_network_connection(ConnectionType.WIFI_ONLY)
ConnectionType的類型有
NO_CONNECTION = 0
AIRPLANE_MODE = 1
WIFI_ONLY = 2
DATA_ONLY = 4
ALL_NETWORK_ON = 6
32. available_ime_enginesavailable_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.
返回安卓設備可用的輸入法
用法print(driver.available_ime_engines)
33.is_ime_activeis_ime_active(self):
Checks whether the device has IME service active. Returns True/False.
Android only.
檢查設備是否有輸入法服務活動。返回真/假。
安卓
用法 print(driver.is_ime_active())
34.activate_ime_engineactivate_ime_engine(self, engine):
Activates the given IME engine on the device.
Android only.
激活安卓設備中的指定輸入法,設備可用輸入法可以從「available_ime_engines」獲取
:Args:
- engine - the package and activity of the IME engine to activate (e.g.,
'com.android.inputmethod.latin/.LatinIME')
用法 driver.activate_ime_engine(「com.android.inputmethod.latin/.LatinIME」)
35.deactivate_ime_enginedeactivate_ime_engine(self):
Deactivates the currently active IME engine on the device.
Android only.
關閉安卓設備當前的輸入法
用法 driver.deactivate_ime_engine()
36.active_ime_engineactive_ime_engine(self):
Returns the activity and package of the currently active IME engine (e.g.,
'com.android.inputmethod.latin/.LatinIME').
Android only.
返回當前輸入法的包名
用法 driver.active_ime_engine
37. toggle_location_servicestoggle_location_services(self):
Toggle the location services on the device. Android only.
打開安卓設備上的位置定位設置
用法 driver.toggle_location_services()
38.set_locationset_location(self, latitude, longitude, altitude):
Set the location of the device
設置設備的經緯度
:Args:
- latitude緯度 - String or numeric value between -90.0 and 90.00
- longitude經度 - String or numeric value between -180.0 and 180.0
- altitude海拔高度- String or numeric value
用法 driver.set_location(緯度,經度,高度)
39.tag_nametag_name(self):
This element's ``tagName`` property.
返回元素的tagName屬性
經實踐返回的是class name
用法 element.tag_name()
40.texttext(self):
The text of the element.
返回元素的文本值
用法 element.text()
由於篇幅限制,這裡貼出上半部分,下半部分下次發
在學習過程中有遇到疑問的,可以加appium(python+java) QQ群交流:512200893
word版的,在群附件也可以下載到
前面的六篇,可以在我的博客園找到全的:http://www.cnblogs.com/yoyoketang/