自动化软件测试 -- Appium 基础 *** 作

自动化软件测试 -- Appium 基础 *** 作,第1张

一、定位元素

你好 #你好就是a标签的text, herf指的是a标签的属性

#若只有标签属性则表示为这种形式

driver.find_element_by_xpath("//*[text()='显示']").click()      #定位不到

原因是:

只有标签属性

Android手机中,text并不是文本,而是属于标签的属性

driver.find_element_by_xpath("//*[@text='显示']").click()        #可以定位到
二、基础 *** 作

基础API

driver.

close_app() 关闭打开的应用

quite() 断开连接

install_app('apk 在电脑的绝对路径') 安装应用

remove_app('应用的包名') 卸载应用

is_app_installed('应用的包名') 判断应用是否安装

push_file(目标位置,base64编码的内容)

pull_file(来源位置) 返回值是base64编码的内容

page_sourse 获取界面xml源码

find_element...

find_elements...

current_package 获取当前 *** 作的应用的包名

current_activity 获取当前 *** 作的界面的名称

element.

text 获取元素文本内容

click() 点击元素对应位置

get_attribute(属性名称) 获取属性值

location 获取元素左上角的坐标

size 获取原色的宽高

三、输入文本 

对于有些元素,可以接受文本输入

如果对于同一个元素,多次调用此方法,会先一个一个删除掉原有内容,再输入

.send_keys(文本内容)

.clear() 清空文本框中的内容

from appium import webdriver
import time
#server 启动参数
desired_caps={}
desired_caps['platformName'] = 'Android'
desired_caps['platformVersion'] = '7.1'
desired_caps['deviceName'] = '127.0.0.1:62001'
desired_caps['appPackage'] = 'com.android.settings'
desired_caps['appActivity'] = '.Settings'
#从appium库里导入driver对象

driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub',desired_capabilities=desired_caps)
time.sleep(1)
driver.find_element_by_xpath("//*[@resource-id ='com.android.settings:id/search']").click()
time.sleep(1)
driver.find_element_by_xpath("//*[@resource-id ='android:id/search_src_text']").send_keys("123")
driver.find_element_by_xpath("//*[@resource-id ='android:id/search_src_text']").send_keys("abc")
driver.find_element_by_xpath("//*[@resource-id ='android:id/search_src_text']").send_keys("张三")
time.sleep(2)
driver.find_element_by_xpath("//*[@resource-id ='android:id/search_src_text']").clear()

#关闭APP
driver.close_app()

time.sleep(1)
#释放资源
driver.quit()

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/916973.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-16
下一篇 2022-05-16

发表评论

登录后才能评论

评论列表(0条)

保存