appium-pythonAPI初整理

1. contexts(self):

   返回当前会话中的上下文,使用后可以识别H5页面的控件

   用法:

       driver.contexts

2. current_context(self):

   返回当前会话的当前上下文

   用法:

       driver.current_context

3. context(self):

   返回当前会话的当前上下文。

   用法:

        driver.context用法driver. Context

4. find_element_by_accessibility_id(self, id):

    通过accessibility id查找元素

    用法:

        driver.find_element_by_accessibility_id()

5. scroll(self, origin_el, destination_el):

从元素origin_el滚动至元素destination_el

参数:     

- originalEl - 起始滑动的元素     

- destinationEl- 滑动的最终目标元素

   用法:        

driver.scroll(el1, el2)

6. drag_and_drop(self, origin_el, destination_el):

    将元素origin_el拖到目标元素destination_el

    参数:

     - originEl - 拖动的元素

     - destinationEl - 拖动的目标位置元素

用法:

driver.drag_and_drop(el1,el2)

7. tap(self, positions, duration=None):

模拟手指点击(最多五个手指),可设置按住时长(毫秒)

    参数:

     - positions - 点击的坐标(最多5个,元组列表)

     - duration - 点击持续时长(ms

    用法:

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

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

A点滑动至B点,滑动时间为毫秒

    参数:    

- start_x - 起始的X坐标     

- start_y - 起始的Y坐标     

- end_x - 目标X轴坐标     

- end_y - 目标Y坐标     

- duration - 滑动的时长(ms-可理解为滑动速度

    用法:        

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

9. reset(self):

重置应用

用法 driver.reset()

10. keyevent(self, keycode, metastate=None):

发送按键码(安卓仅有),按键码可以上网址中找到

    参数:

     - keycode - the keycode to be sent to the device

     - metastate - meta information about the keycode being sent

用法

dr.keyevent(4)

11. press_keycode(self, keycode, metastate=None):

发送按键码(安卓仅有),按键码可以上网址中找到

参数:

 - keycode - the keycode to be sent to the device

 - metastate - meta information about the keycode being sent

用法

driver.press_ keycode(4)

12. long_press_keycode(self, keycode, metastate=None):

发送一个长按的按键码(长按某键)

参数:

     - keycode - the keycode to be sent to the device

     - metastate - meta information about the keycode being sent

用法 driver.long_press_keycode(4)

13. current_activity(self):

获取当前的activity

用法

print(driver.current_activity())

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

等待指定的activity出现直到超时,interval为扫描间隔1秒即每隔几秒获取一次当前的activity返回的True False

    参数:

     - activity - 目标activity

     - timeout - 超时时长

     - interval - 扫描间隔

用法

driver.wait_activity(.activity.xxx,5,2)

15. background_app(self, seconds):

后台运行app多少秒

用法

driver.background_app(5)   置后台5秒后再运行

16. is_app_installed(self, bundle_id):

检查app是否有安装返回 True or False

参数:

     - bundle_id - appname

用法

driver.is_app_installed(com.xxxx)

17. install_app(self, app_path):

安装app,app_path为安装包路径

参数:

     - app_path - app路径

用法

driver.install_app(app_path)

18. remove_app(self, app_id):

写在app    

参数:    

 - app_id - appname

用法

driver.remove_app(com.xxx.)

19. close_app(self):

关闭app

用法:

driver.close_app()

20. open_notifications(self):

打系统通知栏(仅支持API 18 以上的安卓系统)

用法:

driver.open_notifications()

21. network_connection(self):

返回网络类型(数值)

用法:

driver.network_connection

22. set_network_connection(self, connectionType):

设置手机网络模式

数值对照表:

     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

 设置网络类型

用法  

1.先导入模块:from appium.webdriver.connectiontype import ConnectionType

2.使用:dr.set_network_connection(ConnectionType.WIFI_ONLY)

ConnectionType的类型有:

-NO_CONNECTION = 0

-AIRPLANE_MODE = 1

-WIFI_ONLY = 2

-DATA_ONLY = 4

-ALL_NETWORK_ON = 6

23. available_ime_engines(self):

返回安卓设备可用的输入法

用法:

print(driver.available_ime_engines)

24. is_ime_active(self):

检查设备是否有输入法服务活动。返回真/假。

用法:

print(driver.is_ime_active())

25. activate_ime_engine(self, engine):

激活安卓设备中的指定输入法,设备可用输入法可以从available_ime_engines”获取

参数:

    -engine-输入法的activity (e.g.,'com.android.inputmethod.latin/.LatinIME')

用法 driver.activate_ime_engine(com.android.inputmethod.latin/.LatinIME)

26. deactivate_ime_engine(self):

关闭安卓设备当前的输入法

用法:

driver.deactivate_ime_engine()

27. active_ime_engine(self):

返回当前输入法的包名

用法:

driver.active_ime_engine

28. toggle_location_services(self):

打开安卓设备上的位置定位设置

用法:

driver.toggle_location_services()

29. set_location(self, latitude, longitude, altitude):

设置设备的经纬度

参数:

     - latitude纬度 - 值在-90.090.00之间

     - longitude经度 - 值在-180.0180.0之间

     - altitude海拔高度- String or numeric value

用法:

driver.set_location(纬度,经度,高度)

30. tag_name(self):

返回元素的tagName属性

用法:

element.tag_name()

31. text:

返回元素的文本值

用法:

element.text

32. click(self):

点击元素

用法:

element.click()

33. clear(self):

清除输入的内容

用法:

element.clear()

34. is_selected(self):

返回元素是否已经选择。可以用来检查一个复选框或单选按钮被选中。

用法:

element.is_slected()

35. is_enabled(self):

返回元素是否可用True of False

用法:

element.is_enabled()

36. find_element_by_id(self, id_):

通过元素的ID定位元素    

参数:        

- id_ -id.

用法:

driver. find_element_by_id(id)

37. find_elements_by_id(self, id_):

通过元素ID定位,含有该属性的所有元素    

参数:        

- id_ - Id .

用法:

driver. find_elements_by_id(id)

38. find_element_by_name(self, name):

通过元素Name定位(元素的名称属性text),该方法在1.6.3版本后已经取消,可使用Find_element_by_accessibility_id(content-desc)代替

参数:        

- name - name .

用法:

driver.find_element_by_name(name)

39. find_elements_by_name(self, name):

通过元素Name定位(元素的名称属性text),含有该属性的所有元素    

参数:       

- name - name.

用法:

driver.find_element_by_name(name)

40. find_element_by_link_text(self, link_text):

通过元素可见链接文本定位    

参数:       

- link_text - Link text .

用法:

driver.find_element_by_link_text(text)

41. find_element_by_link_text(self, link_text):

通过元素可见链接文本定位,含有该属性的所有元素    

参数:        

- link_text - Link text

用法:

driver.find_elements_by_link_text(text)

42. find_element_by_partial_link_text(self, link_text):

通过元素部分可见链接文本定位    

参数:        

- link_text - Link text .

用:

find_element_by_partial_link_text(text)

43. find_elements_by_partial_link_text(self, link_text):

通过元素部分可见链接文本定位,含有该属性的所有元素    

参数:        

- link_text - Link text .

用:

find_elements_by_partial_link_text(text)

44. find_element_by_tag_name(self, name):

通过查找html的标签名称定位元素,该方法在1.6.3版本后已经取消,使用class_name替代

参数:        

- name - tag name

用法:

driver.find_element_by_tag_name(name)

45. find_elements_by_tag_name(self, name):

通过查找html的标签名称定位所有元素    

参数:        

- name -tag

用法:

driver.find_elements_by_tag_name(name)

46. find_element_by_xpath(self, xpath):

通过Xpath定位元素

参数:

     xpath - xpath .

用法:

find_element_by_xpath(//*)

47. find_elements_by_xpath(self, xpath):

使用xpath批量查找元素

参数:

    - xpath - xpath    

用法:

find_elements_by_xpath(//*)

48. find_element_by_class_name(self, name):

通过元素class name属性定位元素    

参数:        

- name - class name

用法;

driver. find_element_by_class_name(android.widget.LinearLayout)

49. find_elements_by_class_name(self, name):

通过元素class name属性定位所有含有该属性的元素   

参数:        

- name - class name.

用法:

driver. find_elements_by_class_name(android.widget.LinearLayout)

50. find_element_by_css_selector(self, css_selector):

通过CSS选择器定位元素    

参数:        

- css_selector - CSS,

用法:

driver. find_element_by_css_selector(a.nav#home)

51. send_keys(self, *value):

在元素中模拟输入(开启appium自带的输入法并配置了appium输入法后,可以输入中英文)

参数:

    - value - 输入的字符串,也可以是文件.

用法:

    driver.find_element_by_name('username').send_keys("admin")

52. size(self):

获取元素的大小(高和宽)

用法:

driver.element.size

53. location(self):

获取元素左上角的坐标

用法:

driver.element.location

driver.element.location.get('x')'''返回elementx坐标, int类型'''

driver.element.location.get('y')'''返回elementy坐标, int类型'''

 

54. screenshot_as_base64(self):

获取当前元素的截图为Base64编码的字符串

用法:

    img = element.screenshot_as_base64

55. execute_script(self, script, *args):

在当前窗口/框架(特指 Html iframe )同步执行 javascript 代码。你可以理解为如果这段代码是睡眠5秒,这五秒内主线程的 javascript 不会执行

参数:

     - script: js代码.

     - *argsjs参数.

用法:

    driver.execute_script('document.getElement')

56. current_url(self):

获取当前页面的网址。

用法:

    driver.current_url

57. page_source(self):

获取当前页面的源。

用法:

    driver.page_source

58. close(self):

关闭当前窗口

用法:

    driver.close()

59. quit(self):

退出driver,即所有的appium动作停止

用法:

     driver.quit()

60. get_screenshot_as_file(filename):

屏幕截图

参数:

-filename-截图命名

使用:

driver.get_screenshot_as_file(filename)

61. get_windows_size():

获取屏幕大小(长宽)

使用:

driver.get_windows_size()


猜你喜欢

转载自blog.csdn.net/ljl6158999/article/details/79140327