(5)Appium手机操作-针对手机常用设置功能进行操作

  • 1、获取手机时间
      方法:device_time
    
      代码实现:
          # 获取当前手机的时间
          print(driver.device_time)
      执行结果:
          Wed Dec 27 08:52:45 EST 2017
    
  • 2、获取手机的宽高
      获取手机的宽高,可以根据宽高做一些坐标的操作
    
      方法:get_window_size()
    
      代码实现:
          print(driver.get_window_size())
      执行结果:
          {'height': 800, 'width': 480}
    
  • 3、发送键到设备
      模拟系统键值的操作,比如操作honme键,音量键,返回键等。
    
      方法:keyevent(keycode, metastate=None):
      参数:
          keycode:发送给设备的关键代码
          metastate:关于被发送的关键代码的元信息,一般为默认值
    
      业务场景:
          1.打开设置
          2.按多次音量增加键
    
      代码实现:
          for i in range(3):
              driver.keyevent(24)
  • 常用键展示
    KEYCODE_CALL 拨号键 5
    KEYCODE_ENDCALL 挂机键 6
    KEYCODE_HOME 按键Home 3
    KEYCODE_MENU 菜单键 82
    KEYCODE_BACK 返回键 4
    KEYCODE_SEARCH 搜索键 84
    KEYCODE_CAMERA 拍照键 27
    KEYCODE_FOCUS 拍照对焦键 80
    KEYCODE_POWER 电源键 26
    KEYCODE_NOTIFICATION 通知键 83
    KEYCODE_MUTE 话筒静音键 91
    KEYCODE_VOLUME_MUTE 扬声器静音键 164
    KEYCODE_VOLUME_UP 音量增加键 24
    KEYCODE_VOLUME_DOWN 音量减小键 25
    KEYCODE_ENTER 回车键 66
    KEYCODE_ESCAPE ESC键 111
    KEYCODE_DPAD_CENTER 导航键 确定键 23
    KEYCODE_DPAD_UP 导航键 向上 19
    KEYCODE_DPAD_DOWN 导航键 向下 20
    KEYCODE_DPAD_LEFT 导航键 向左 21
    KEYCODE_DPAD_RIGHT 导航键 向右 22
    KEYCODE_MOVE_HOME 光标移动到开始键 122
    KEYCODE_MOVE_END 光标移动到末尾键 123
    KEYCODE_PAGE_UP 向上翻页键 92
    KEYCODE_PAGE_DOWN 向下翻页键 93
    KEYCODE_DEL 退格键 67
    KEYCODE_FORWARD_DEL 删除键 112
    KEYCODE_INSERT 插入键 124
    KEYCODE_TAB Tab键 61
    KEYCODE_NUM_LOCK 小键盘锁 143
    KEYCODE_CAPS_LOCK 大写锁定键 115
    KEYCODE_BREAK Break/Pause键 121
    KEYCODE_SCROLL_LOCK 滚动锁定键 116
    KEYCODE_ZOOM_IN 放大键 168
    KEYCODE_ZOOM_OUT 缩小键 169
    KEYCODE_ALT_LEFT Alt+Left
    KEYCODE_ALT_RIGHT Alt+Right
    KEYCODE_CTRL_LEFT Control+Left
    KEYCODE_CTRL_RIGHT Control+Right
    KEYCODE_SHIFT_LEFT Shift+Left
    KEYCODE_SHIFT_RIGHT Shift+Right

  官方keyevent文档

  地址: https://developer.android.com/reference/android/view/KeyEvent.html

  • 4、操作手机通知栏
      打开手机的通知栏,可以获取通知栏的相关信息和元素操作
    
      方法:open_notifications()
    
      业务场景: 
          1.启动设置
          2.打开通知栏
    
      代码实现:
          driver.open_notifications()
  • 5、.获取手机当前网络
      获取手机当前连接的网络
    
      方法:network_connection
    
      业务场景:
          获取手机当前网络模式
    
      代码实现:
          print(driver.network_connection)
      执行结果:
          6

           

  • 6、设置手机网络
      更改手机的网络模式,模拟特殊网络情况下的测试用例
    
      方法:set_network_connection(connectionType)
      参数:
          connectionType:需要被设置成为的网络类型
    
      业务场景:
          1.启动设置
          2.设置手机网络为飞行模式
    
      代码实现:
          driver.set_network_connection(1)
    
  • 7、手机截图
      截取手机当前屏幕,保存指定格式图片到设定位置
    
      方法:get_screenshot_as_file(filename)
      参数:
          filename:指定路径下,指定格式的图片.
    
      业务场景:
          1.打开设置页面
          2.截图当前页面保存到当前目录,命名为screen.png
    
      代码实现:
          import os
          driver.get_screenshot_as_file(os.getcwd() + os.sep + './screen.png')
      执行结果:
          当前目录下会生成screen.png文件

posted on 2020-02-20 16:58  crystal1126  阅读(366)  评论(0编辑  收藏  举报

导航