原文链接
常用操作点击操作
一般在获取到元素后,可以调用click()方法实现对该元素的点击操作。示例代码如下:
driver.find_element_by_id("home_search").click()
driver.findElementById("home_search").click();
输入操作
输入操作示例代码如下:
self.driver.find_element_by_id("search_input_text").send_keys("阿里巴巴")
driver.findElementById("search_input_text").sendKeys("阿里巴巴");
效果展示:
获取元素属性
通过获取的元素属性信息,可以对页面数据进行验证(断言),或者用于分支判断。
元素有很多属性信息。无论是 using 还是 using ,元素的属性信息一般都显示在页面的右下方。
下图是元素定位页面:
可以使用获取元素属性的方法来获取这些属性信息。然后通过获取的元素属性值进行断言,还可以获取复选框是否被选中的状态,或者获取元素是否可用等信息。
获取TEXT属性
返回元素的text属性的值,用法如下:
self.driver.find_element_by_xpath(
'//*[@resource-id="com.xueqiu.android'
).get_attribute('text')
driver.findElementByXPath
"//*[@resource-id="com.xueqiu.android"]").
getAttribute("text");
获取 CLASS 属性
返回元素的类的属性值,用法如下:
self.driver.find_element_by_xpath(
'//*[@resource-id="com.xueqiu.android"]'
).get_attribute('class')
driver.findElementByXPath("
//*[@resource-id="com.xueqiu.android"]")
.getAttribute("class");
获取 ID 属性
返回-id的属性值(API≥18支持),用法如下:
self.driver.find_element_by_xpath(
'//*[@resource-id="com.xueqiu.android"]'
).get_attribute('resource-id')
driver.findElementByXPath
("//*[@resource-id="com.xueqiu.android"]")
.getAttribute("resource-id");
获取 -DESC 属性
返回元素的-desc属性值,用法如下:
self.driver.find_element_by_xpath(
'//*[@resource-id="com.xueqiu.android'
).get_attribute('content-desc')
driver.findElementByXPath
("//*[@resource-id="com.xueqiu.android"]")
.getAttribute("content-desc");
获取元素的其他属性
还可以获取元素的一些其他属性,比如元素是否可见、是否被选中、是否可用等,下面分别介绍这些属性值的获取:
get_attribute('clickable') # 是否可点击
get_attribute('checked') # 是否被选中
get_attribute('displayed') # 是否显示
get_attribute('enabled') # 是否可用
getAttribute("clickable"); // 是否可点击
getAttribute("checked"); //是否被选中
getAttribute("displayed"); // 是否显示
getAttribute("enabled"); // 是否可用
获取页面的XML结构
获取页面的XML结构,多用于页面数据校验。此外,您还可以分析页面的结构,以帮助定位问题。
页面的XML结构可以通过.与输出 HTML 格式不同,输出是 XML 格式。
示例代码如下:
版本
from appium import webdriver
...
def test_search(self):
# 点击搜索
self.driver.find_element_by_id(
"com.xueqiu.android:id/tv_search").click()
# 输入内容“alibaba”
self.driver.find_element_by_id(
"com.xueqiu.android:id/search_input_text").send_keys("alibaba")
# 打印输出 class 属性
print(self.driver.find_element_by_xpath(
'//*[@resource-id="com.xueqiu.android')
.get_attribute('class'))
# 打印输出页面源码
print(self.driver.page_source)
...
JAVA版
import io.appium.java_client.android.AndroidDriver;
...
@Test
public void searchTest(){
// 点击搜索
driver.findElement(By.id("com.xueqiu.android:id/tv_search")).click();
// 输入内容“alibaba”
driver.findElement(By.id("com.xueqiu.android:id/search_input_text"))
.sendKeys("alibaba");
// 打印输出 class 属性
System.out.println(driver.findElementByXPath(
"//*[@resource-id="com.xueqiu.android"]").getAttribute("class"));
// 打印输出页面源码
System.out.println(driver.getPageSource());
}
...
以上代码创建了一个测试方法,首先定位搜索框,在搜索框中输入内容,通过get属性方法获取搜索结果的类属性,最后得到页面的布局源码。
⬇️您好,如果您喜欢这篇文章,请点击“Like”!您的支持很重要~(▽) PS:有任何问题请联系我们~v
>>更多技术文章分享和免费材料接收
© 版权声明
本站下载的源码均来自公开网络收集转发二次开发而来,
若侵犯了您的合法权益,请来信通知我们1413333033@qq.com,
我们会及时删除,给您带来的不便,我们深表歉意。
下载用户仅供学习交流,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担,访问及下载者下载默认同意本站声明的免责申明,请合理使用切勿商用。
THE END
暂无评论内容