码迷,mamicode.com
首页 > 移动开发 > 详细

appium查找元素心得

时间:2017-03-22 16:27:40      阅读:271      评论:0      收藏:0      [点我收藏+]

标签:定位   res   如何   而且   resource   drive   问题   方式   _id   

在使用appium测试app的时候并没有selenium那么好用,为什么呢?

个人觉得是因为定位方式太少,selenium中的xpath已经强大到基本可以找到任何一个元素。

但是在appium中xpath并不好用,而且经常是很长一串的,效果不好。基本都用resource_id来定位,那么问题来了,没有resource_id怎么办,用content-desc,这是个帮助盲人使用的东西,可以使用find_element_by_accessibility_id来定位,那么问题又来了如果这个content-desc里面有空格换行符什么的怎么办?如何用类似xpath中的contains的东西来定位呢?这里有个思路,通过class_name来查找包含要找的元素的一个组,通过遍历每个元素,判断元素的get_attribute(‘name‘)中是否包含关键词来确定是否是我们要找的元素。

elements = driver.find_elements_by_class_name(‘xxx‘):

for element in elements:

  if key in element.get_attribute(‘name‘):

    print ‘element find‘

但是有个问题必须说明下get_attribute(‘name‘)有可能返回content-desc也有可能返回text,一般来说如果没有content-desc的话会返回text

appium查找元素心得

标签:定位   res   如何   而且   resource   drive   问题   方式   _id   

原文地址:http://www.cnblogs.com/lgh344902118/p/6600254.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!