美文网首页
Appium连接真机

Appium连接真机

作者: jinxi197 | 来源:发表于2019-01-30 16:15 被阅读14次

    配置参数

    • 在网上看了好多的文章,但是Appium Desktop一直报错,始终都没有连接上手机,今天准备搜索文章的时候想到有可能是我之前搜索有问题,所以就换了搜索内容,没想到就出来了
    • 文章连接:卡尔西法ishere
    • 连接参数意义
      • platformName:平台名称,iOS、Android、 FirefoxOS,选择真机/模拟器对应的就好
      • platformVersion:平台版本,可在手机设置中的关于手机查看
      • deviceName:设备名称
      • appPackage:要运行的Android应用程序的Java包(获取方式在上方给出的文章中,只试了第三种)
      • appActivity:从程序包启动的Android活动的活动名称
      • noReset:不在此会话之前重置应用程序状态(意思就是每次启动都当做第一次启动,因为首次进入某些应用时有的会有弹框,所以测试时可以设置为True),默认为False
      • 我之前只写了这些参数,运行的时候总是报错,后来加了一个参数就可以正常连接成功了,我不知道为什么(如果有知道的请告诉我,我也学习学习,谢谢)


        报错图片
      • udid:连接的物理设备的唯一设备标识符,可通过adb devices查看,就是一串数字和字母组成的字符
      • 更多的参数意义可查看官网

    测试案例

    • 测试的案例是计算机
    • 首先appium连接手机成功
    • 点击Start Session,成功后就说明连接上了
    • 左边显示手机界面,中间显示app 的源代码,最右边会显示我们选中的元素
    • 左边手机界面选中了元素,最右边会显示id、xpath,以便于写代码定位元素
    • 例如需要计算机自动计算1595+6等于多少
    • 可以一个一个的选择每个字符的id是多少,然后利用python代码选中该元素

    python代码

    from appium import webdriver  #导入webdriver库
    import time #导入时间模块
    
    desired_caps = {} #配置参数的字典
    desired_caps['platformName'] = 'Android' 
    desired_caps['platformVersion'] = '6.0'
    desired_caps['deviceName'] = 'OPPO R17 Pro'
    desired_caps['appPackage'] = 'com.android.calculator2'
    desired_caps['appActivity'] = 'com.android.calculator2.Calculator'
    desired_caps['udid'] = 'xxxx' #xxxx不是真的udid,写真的udid
    desired_caps['noReset'] = 'True'
    
    driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps) #第一个参数是默认的,不需要更改(wd 可以理解是WebDriver 的缩写)
    
    driver.find_element_by_id("com.android.calculator2:id/digit_1").click()   #通过id找到数字1并且点击
    driver.find_element_by_id("com.android.calculator2:id/digit_5").click()
    driver.find_element_by_id("com.android.calculator2:id/digit_9").click()
    driver.find_element_by_id("com.android.calculator2:id/del").click() #点击删除键
    driver.find_element_by_id("com.android.calculator2:id/digit_9").click()
    driver.find_element_by_id("com.android.calculator2:id/digit_5").click()
    driver.find_element_by_id("com.android.calculator2:id/op_add").click() #点击‘+’
    driver.find_element_by_id("com.android.calculator2:id/digit_6").click()
    driver.find_element_by_id("com.android.calculator2:id/eq").click() #点击‘=’
    
    time.sleep(5) #这个是为了能够看清结果,可删除
    driver.quit()
    

    相关文章

      网友评论

          本文标题:Appium连接真机

          本文链接:https://www.haomeiwen.com/subject/wslcsqtx.html