app自动化测试(Android)–App 控件交互(深入理解Android自动化测试)

网友投稿 370 2022-08-30


app自动化测试(Android)–App 控件交互(深入理解Android自动化测试)

常用操作

python 版本

driver.find_element_by_id("home_search").click()

Java 版本

driver.findElementById("home_search").click();

输入操作

输入操作示例代码如下:

python 版本

self.driver.find_element_by_id("search_input_text").send_keys("阿里巴巴")

Java 版本

driver.findElementById("search_input_text").sendKeys("阿里巴巴");

效果展示:

获取元素属性

通过获取到的元素属性信息,可以进行页面数据的验证(断言),或者用于分支判断。 元素有很多属性信息,无论是使用 uiautomatorviewer 还是使用 Appium Inspector,元素的属性信息一般都会展示在页面的右下方。 如下图是 Appium Inspector 的元素定位页面:

可以使用获取元素的属性的方法来获取这些属性信息。然后通过获取到的元素属性值进行断言,也可以获取到复选框是否被选中的状态,或者获取某个元素是否可用等信息。

获取 TEXT 属性

返回元素的 text 的属性值,用法如下:

Python 版本

self.driver.find_element_by_xpath( '//*[@resource-id="com.xueqiu.android' ).get_attribute('text')

Java 版本

driver.findElementByXPath\ "//*[@resource-id=\"com.xueqiu.android\"]").\ getAttribute("text");

获取 CLASS 属性

返回元素的 class 的属性值,用法如下:

Python 版本

self.driver.find_element_by_xpath( '//*[@resource-id="com.xueqiu.android"]' ).get_attribute('class')

Java 版本

driver.findElementByXPath("\ //*[@resource-id=\"com.xueqiu.android\"]")\ .getAttribute("class");

获取 RESOURCE-ID 属性

返回 resource-id 的属性值(API≥18 支持),用法如下:

Python 版本

self.driver.find_element_by_xpath( '//*[@resource-id="com.xueqiu.android"]' ).get_attribute('resource-id')

Java 版本

driver.findElementByXPath\ ("//*[@resource-id=\"com.xueqiu.android\"]")\ .getAttribute("resource-id");

获取 CONTENT-DESC 属性

返回元素的 content-desc 的属性值,用法如下:

Python 版本

self.driver.find_element_by_xpath( '//*[@resource-id="com.xueqiu.android' ).get_attribute('content-desc')

Java 版本

driver.findElementByXPath\ ("//*[@resource-id=\"com.xueqiu.android\"]")\ .getAttribute("content-desc");

获取元素的其它属性

也可以获取到元素的一些其它的属性,比如这个元素是否可见,是否被选中,是否可用等,下面介绍这些属性值的获取:

python 版本

Java 版本

获取页面的XML结构

获取页面的 XML 结构,大部分情况是用于页面数据的验证。另外也可以通过分析页面的结构,辅助定位问题。 通过 driver.page_source 可以获取页面的 XML 结构。与 Selenium 输出的 HTML 格式不一样,Appium 的 page_source 是 XML 格式。 示例代码如下:

PYTHON 版本

JAVA 版本

上面的代码创建了一个测试方法,先定位到搜索框,向搜索框中输入内容,通过获取属性方法获取到搜索结果的 class 属性,最后获取页面的布局源码。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:python四十几行代码实现界面化贪吃蛇(几十行代码的python程序)
下一篇:python文档:数字(python数字字符)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~