zoukankan      html  css  js  c++  java
  • Appium 定位方法例子(4)

    有朋友留言反应定位不到元素,没错,船长也为这个一直在头疼,我用的App是原生安卓+webService+h5类型的,定位虽然没问题,但是在进行操作的时候各种不通过……真的很头疼啊……我这里说的“操作”是指例如:清空输入框、输入用户名之类的,但是定位是没问题的。今天先给大家看一个比较标准的App,用这种就没有任何问题,其实也是船长在偷懒,因为计算器的操作真的是太简单啦~

        我百度的“计算器apk”:

    然后下载的小米计算器:

    进行的操作是:12+1=

    # coding: utf-8

    from appium import webdriver
    from time import sleep desired_caps = {'platformName': 'Android',
                   'deviceName': '127.0.0.1:62001',
                   'platformVersion': '23',
                   'appPackage': 'com.miui.calculator',
                   'appActivity': 'com.miui.calculator.cal.CalculatorActivity'}
    driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub", desired_caps) sleep(2)

    # 操作:12+1=

    # resource-id
    driver.find_element_by_id("com.miui.calculator:id/btn_1").click()
    # text
    driver.find_element_by_name("2").click()
    # content-desc
    driver.find_element_by_accessibility_id("加").click()
    # class【注:1的索引是6,7的索引是0】
    driver.find_elements_by_class_name("android.widget.Button")[6].click()
    # uiautomator
    driver.find_element_by_android_uiautomator('new UiSelector().description("等于")').click()

        我想给大家写一些实用性强的,因为网上搜到的全是用计算器做例子,原因就在这——定位和操作不复杂,写起来轻松加愉快…

        让船长再研究一下安卓原生和h5混合的App该怎么弄…

        还要感谢@小麦苹果大神的指点哈~我太笨,学起来太慢

    微信公众号搜索“自动化测试实战”或扫描下方二维码添加关注~~~

  • 相关阅读:
    springmvc整合mybatis框架源码 bootstrap
    观察者模式与.Net Framework中的委托与事件
    C#类型基础——学习笔记一
    知识图谱简介及常见应用场景
    Go语言实现bitmap算法
    互联网公司不同发展阶段需要什么样的技术负责人
    Go语言中使用切片(slice)实现一个Vector容器
    Go语言中defer语句使用小结
    使用interface与类型诊断机制判断一个类型是否实现了某个方法
    互联网产品发掘种子用户和意见领袖的方法
  • 原文地址:https://www.cnblogs.com/captainmeng/p/8387252.html
Copyright © 2011-2022 走看看