zoukankan      html  css  js  c++  java
  • 手机操作API

     针对手机的一些常用设置功能进行操作.
    前置代码
      from appium import webdriver
        # server 启动参数
        desired_caps = {}
        # 设备信息
        desired_caps['platformName'] = 'Android'
        desired_caps['platformVersion'] = '5.1'
        desired_caps['deviceName'] = '192.168.56.101:5555'
        # app的信息
        desired_caps['appPackage'] = 'com.android.settings'
        desired_caps['appActivity'] = '.Settings'
    
        # 声明我们的driver对象
        driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)

    获取手机时间

     方法:device_time
     代码实现:
          # 获取当前手机的时间
          print(driver.device_time)
      执行结果:
          Wed Dec 27 08:52:45 EST 2017

    获取手机的宽高

    
    
     获取手机的宽高,可以根据宽高做一些坐标的操作
      方法:get_window_size()
    
    
      代码实现:
          print(driver.get_window_size())
      执行结果:
          {'height': 800, 'width': 480}

    发送键到设备

     模拟系统键值的操作,比如操作honme键,音量键,返回键等。
      方法:keyevent(keycode, metastate=None):
      参数:
          keycode:发送给设备的关键代码
          metastate:关于被发送的关键代码的元信息,一般为默认值
      业务场景:
          1.打开设置
          2.按多次音量增加键
      代码实现:
          for i in range(3):
              driver.keyevent(24)

     操作手机通知栏

      打开手机的通知栏,可以获取通知栏的相关信息和元素操作
      方法:open_notifications()
      业务场景: 
          1.启动设置
          2.打开通知栏
      代码实现:
          driver.open_notifications()

     获取手机当前网络

     获取手机当前连接的网络
      方法:network_connection
      业务场景:
          获取手机当前网络模式
      代码实现:
          print(driver.network_connection)
      执行结果:
          6

     设置手机网络

     更改手机的网络模式,模拟特殊网络情况下的测试用例
      方法:set_network_connection(connectionType)

      参数:
        connectionType:需要被设置成为的网络类型

      业务场景:
          1.启动设置
          2.设置手机网络为飞行模式
      代码实现:
          driver.set_network_connection(1)

     手机截图

      截取手机当前屏幕,保存指定格式图片到设定位置
      方法: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文件


















  • 相关阅读:
    mangodb学习0.1 概念
    express 学习笔记(一)路由
    vue配置路由
    screenX, clientX, pageX
    svg的世界、视窗、视野
    window.print()打印网页(一)
    cookie基础
    BOM基础
    Java三大特征:封装 继承 多态
    面向对象
  • 原文地址:https://www.cnblogs.com/wangxudong01/p/14514218.html
Copyright © 2011-2022 走看看