元素的属性我们经常会用到,当定位到某个元素后,有时会需要用到这个元素的text值、className、resource-id、checked等。 
一般标准的属性我们都可以通过get_attribute(“属性名称”)来获取,我们来看看下面截图的元素都是怎么获取的吧。从上到下来看。
我们从text开始讲,我们先通过xpath方式定位到这个元素
# coding:utf-8
from appium import webdriver
import time desired_caps = {
"platformName": "Android",
"deviceName": "emulator-5554",
"platformVersion": "5.1.1",
"appPackage": "com.sdu.didi.gsui",
"noReset": True,
"appActivity": "com.didichuxing.driver.sdk.LauncherActivity"
}
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
driver.find_element_by_xpath("//android.widget.EditText[@resource-id='com.sdu.didi.gsui:id/et_phone' and @text='请输入手机号码']").click()
driver.find_element_by_xpath("//android.widget.EditText[@resource-id='com.sdu.didi.gsui:id/et_phone' and @text='请输入手机号码']").send_keys("")
time.sleep(3)
a = driver.find_element_by_xpath("//android.widget.CheckBox[@text='同意']")
获取text方法有:
print(a.text)
print(a.get_attribute("text"))
虽然有两种方法,但一般都用第一种,因为写法比较简单。知道有第二种方法就好了。
 
获取resource-id值方法:
print(a.get_attribute("resourceId"))
获取classname值方法:
print(a.get_attribute("className"))
print(a.tag_name)
获取content-desc值方法:
print(a.get_attribute("name"))
这里特别说明一下,当那个content-desc的值为空的时候,这个方法获取的是元素text的值,只有当content-desc不为空才返回对应的值。 
 
获取check值方法:
print(a.get_attribute("checked"))
 
元素里只要属性值是布尔型的,即false or true。都可以通过这个方法来获取,就不一一列出了。这里的第二种方法经常用到,重点掌握!!
获取元素坐标:
print(a.size)
print(a.location)
基本上就这些,定位到元素后,元素里的属性都是可以获取到的。
 
 

作者:含笑半步颠√

博客链接:https://www.cnblogs.com/lixy-88428977

声明:本文为博主学习感悟总结,水平有限,如果不当,欢迎指正。如果您认为还不错,欢迎转载。转载与引用请注明作者及出处。

appium_获取元素状态的更多相关文章

  1. Appium+java 获取元素状态

    元素的属性我们经常会用到,当定位到某个元素后,有时会需要用到这个元素的text值.className.resource-id.checked等.  一般标准的属性我们都可以通过get_attribut ...

  2. Springboot Selenide UI 自动化测试

    标题中的Selenide 并没有拼错,确实不是selenium Selenium做UI自动化,可以参考我其他的blog: Selenium做自动化最好要封装起来,否则对于元素的等待,页面的加载会使得自 ...

  3. Java Selenide 介绍&使用

    目录 Selenide 介绍 官方快速入门 元素定位 元素操作 浏览器操作 断言 常用配置 Selenide 和 Webdriver 对比 Selenide 介绍 Selenide github Se ...

  4. JS魔法堂:获取当前脚本文件的绝对路径

    一.前言 当写模块加载器时,获取当前脚本文件的绝对路径作为基础路径是必不可少的一步,下面我们一起来探讨一下这个问题吧! 二.各大浏览器的实现方式 [a]. Chrome和FF 超简单的一句足矣! va ...

  5. legend2---开发日志6(后端和前端如何相互配合(比如php,js,元素状态和数据改变))

    legend2---开发日志6(后端和前端如何相互配合(比如php,js,元素状态和数据改变)) 一.总结 一句话总结:php给元素初始状态,js根据这个状态做初始化和后续变化,使用vue真的很方便( ...

  6. 微信企业号 获取AccessToken

    目录 1. AccessToken介绍 2. 示例代码 1. AccessToken介绍 1.1 什么是AccessToken AccessToken即访问凭证,业务服务器每次主动调用企业号接口时需要 ...

  7. salesforce 零基础学习(六十二)获取sObject中类型为Picklist的field values(含record type)

    本篇引用以下三个链接: http://www.tgerm.com/2012/01/recordtype-specific-picklist-values.html?m=1 https://github ...

  8. HTML 获取屏幕、浏览器、页面的高度宽度

    本篇主要介绍Web环境中屏幕.浏览器及页面的高度.宽度信息. 目录 1. 介绍:介绍页面的容器(屏幕.浏览器及页面).物理尺寸与分辨率.展示等内容. 2. 屏幕信息:介绍屏幕尺寸信息:如:屏幕.软件可 ...

  9. 【.net 深呼吸】启动一个进程并实时获取状态信息

    地球人和火星人都知道,Process类既可以获取正在运行的进程,也可以启动一个新的进程.在79.77%应用场合,我们只需要让目标进程顺利启动就完事了,至于它执行了啥,有没有出错,啥时候退出就不管了. ...

随机推荐

  1. Git 自救指南:这些坑你都跳得出吗?

    阅读本文大概需要 2 分钟. 菜单栏中添加我微信,私聊[加群]拉你入微信学习交流群 Git 虽然因其分布式管理方式,不完全依赖网络,良好的分支策略,容易部署等优点,已经成为最受欢迎的源代码管理方式. ...

  2. centos7 安装Hadoop-2.6.0-cdh5.16.1.tar.gz

    准备Hadoop-2.6.0-cdh5.16.1.tar.gz 下载网址 http://archive.cloudera.com/cdh5/cdh/5/Hadoop-2.6.0-cdh5.16.1.t ...

  3. [Beta]Scrum Meeting#4

    github 本次会议项目由PM召开,时间为5月9日晚上10点30分 时长15分钟 任务表格 人员 昨日工作 下一步工作 木鬼 撰写博客整理文档 撰写博客整理文档 swoip 改进界面 改进界面 bh ...

  4. element UI中的select选择器的change方法需要传递多个值

    如果直接调用change事件,不传任何参数,则可以获取到当前选中的值(因为默认会将event参数传递过去) 场景: 你需要将select选择器 ”选中的当前元素“ 和 ”其他你需要的值“ 一起传递过去 ...

  5. Css3 文字渐变整理(一)

    一.文本颜色渐变 <gradient> :可以应用在所有接受图像的属性上,允许使用简单的语法实现颜色渐变,以便UA在渲染页面自动生成图像. 语法:<gradient> = li ...

  6. Python示例项目学习

    原文地址:http://www.360doc.com/showweb/0/0/874025604.aspx 「 Python3 实现火车票查询工具 」   相信很多人学Python都是冲着它强大的爬虫 ...

  7. 我的node-webkit笔记

    话不多说,直接上码: index.html <!DOCTYPE html> <html> <head> <meta charset="utf-8&q ...

  8. (转)ES6系列——let和const深入理解

    原文:https://juejin.im/post/59e6a86d518825422c0cbb6f https://www.cnblogs.com/slly/p/9234797.html-----l ...

  9. 用selenium自动加载浏览器下载图片

    上一篇用requests这个库进行图片的批量下载,只所以可以这样做,是因为豆瓣提供的XHR的接口API,而且接口返回的数据类型为json格式,所以使用起来非常的方便,但是有时候我们需要分析html格式 ...

  10. 012-MySQL 索引添加以及优化说明

    一.索引概述 数据库的索引可以加快查询速度,原因是索引使用特定的数据结构(B-Tree)对特定的列额外组织存放,加快存储引擎(索引是存储引擎实现)查找记录的速度. 如果查询语句使用索引(通常是wher ...