博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第二章002 定位元素
阅读量:5224 次
发布时间:2019-06-14

本文共 1789 字,大约阅读时间需要 5 分钟。

一、常用的定位元素方式

1、通过id

2、通过name

3、通过classname,常用于定位一组元素

4、通过xpath

二、获取元素属性

.text

.getattribute("text")

1 #coding=utf-8 2 from appium import webdriver 3 import time 4  5 desired_caps = {} 6 desired_caps['platformName'] = 'Android' 7 desired_caps['platformVersion'] = '5.1' 8 desired_caps['deviceName'] = '6T3HMU162P007147' 9 desired_caps['appPackage'] = 'com.Qunar'#被测app包名10 desired_caps['appActivity'] = 'com.mqunar.splash.SplashActivity'#被测app的activity11 desired_caps['unicodeKeyboard'] = True  #绕过系统自带的键盘12 desired_caps['resetKeyboard'] = True13 desired_caps['newCommandTimeout'] = 720014 15 driver = webdriver.Remote('http://127.0.0.1:4725/wd/hub', desired_caps)#启动app16 time.sleep(15)#增加等待时间,否则可能报错,找不到元素17 18 #进入汽车票19 driver.find_element_by_id('com.mqunar.atom.alexhome:id/atom_alexhome_mod_bus_ticket').click()20 time.sleep(5)21 22 #获取默认出发地23 dep = driver.find_element_by_id("com.mqunar.atom.bus:id/atom_bus_tv_dep_city")24 print dep.get_attribute("text")25 26 #获取默认到达地27 arr = driver.find_element_by_id("com.mqunar.atom.bus:id/atom_bus_tv_arr_city")28 print arr.get_attribute("text")29 #获取默认日期30 print driver.find_element_by_id("com.mqunar.atom.bus:id/atom_bus_tv_dep_date").text31 32 #通过xpath定位搜索,并点击搜索33 driver.find_element_by_xpath("//android.widget.Button[@text='搜  索']").click()34 time.sleep(5)35 36 #xpath定位汽车票,点击进入车次详情37 driver.find_element_by_xpath("//android.widget.LinearLayout[@index='3']").click()38 time.sleep(10)39 40 #name定位预订车次,点击进入预约界面41 driver.find_element_by_name(u"汽车票预订").click()42 time.sleep(5)

三、元素赋值

1、屏蔽软键盘

增加两行代码

代码如下

desired_caps['unicodeKeyboard'] = True  #屏蔽软键盘desired_caps['resetKeyboard'] = True

2、输入中文

在前面加上小u,如driver.find_element_by_id("com.mqunar.patch:id/pub_pat_title_etSearch").send_keys(u"上海")

 

转载于:https://www.cnblogs.com/huiguniang/p/8269979.html

你可能感兴趣的文章
20190422 T-SQL 触发器
查看>>
[置顶] Linux终端中使用上一命令减少键盘输入
查看>>
poj1422_有向图最小路径覆盖数
查看>>
BootScrap
查看>>
[大牛翻译系列]Hadoop(16)MapReduce 性能调优:优化数据序列化
查看>>
WEB_点击一百万次
查看>>
CodeForces - 878A Short Program(位运算)
查看>>
路冉的JavaScript学习笔记-2015年1月23日
查看>>
Mysql出现(10061)错误提示的暴力解决办法
查看>>
2018-2019-2 网络对抗技术 20165202 Exp3 免杀原理与实践
查看>>
NPM慢怎么办 - nrm切换资源镜像
查看>>
Swift - UIView的常用属性和常用方法总结
查看>>
Swift - 异步加载各网站的favicon图标,并在单元格中显示
查看>>
Java编程思想总结笔记Chapter 5
查看>>
[LeetCode]662. Maximum Width of Binary Tree判断树的宽度
查看>>
【Python学习笔记】1.基础知识
查看>>
梦断代码阅读笔记02
查看>>
selenium学习中遇到的问题
查看>>
大数据学习之一——了解简单概念
查看>>
Linux升级内核教程(CentOS7)
查看>>