Appium python-client添加联系人
Appium python-client添加联系人
测试平台:红米 Note 4X
操作系统:Android 7.0
ContactsTest.py
#coding=utf-8
from time import sleep
from appium import webdriver
desired_caps = {}
desired_caps['platformName'] = 'Android'
desired_caps['platformVersion'] = '7.0'
desired_caps['deviceName'] = 'Redmi Note 4X'
desired_caps['appPackage'] = 'com.android.contacts'
desired_caps['appActivity'] = '.activities.PeopleActivity'
# 以下两项主要是在点击输入框的时候, 会触发系统输入法
# 导致可能我们发送的是字符 `234`, 但是九宫格中文输入法有可能给出的是 `bei`
# 这两个属性就是屏蔽系统输入法, 使用Appium自己的, 但是测试完成后, 得自己去系统设置中将输入法切换回来
desired_caps['unicodeKeyboard'] = True # 使用unicodeKeyboard的编码方式来发送字符串
desired_caps['resetKeyboard'] = True # 将键盘给隐藏起来
driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
# 通过id查找控件
# 具体的控件id可以通过 `AndroidSDK\tools\uiautomatorviewer.bat` 来直接获取
createContactBtn = driver.find_element_by_id('com.android.contacts:id/fab')
# 模拟点击操作
createContactBtn.click()
# 也可以通过文本查找控件, 并输入姓名
name = driver.find_element_by_name(u"姓名") # "姓名" 是输入框的hint值
name.click()
name.send_keys("张三") # 输入指定的文本, 注意这里需要上面desire_caps屏蔽系统输入法才行
# 也可以查找多个控件
# 比如通讯录可能有多个电话号码输入框 `elements`
phone = driver.find_elements_by_name(u"电话")
phone[0].click()
phone[0].send_keys("18888888888")
# 判断结果是否符合预期, 不通过的话会在这里中断并打印日志
# self.assertEqual(phone[0].text, "15000776646")
# 截屏, 会在当前目录保存指定文件名的图片
driver.save_screenshot("after_input.png")
saveBtn = driver.find_element_by_name(u"确定")
saveBtn.click()
# 等待, 单位:秒
sleep(5)
driver.quit()
控件属性/操作方法
text
控件显示的文本信息,如 edit.text,有点类似于属性获取click()
模拟控件点击操作,如 button.clickclear()
清除控件的文本is_enabled()
判断控件是否可用is_selected()
控件是否被选中is_displayed()
控件是否显示get_attribute(self, name)
指定属性名称,返回属性值,若属性名不存在,则返回nonesend_keys(self, *value)
模拟输入文本到控件
系统API
current_activity
获取当前Activity信息,可以直接打印,如 print(driver.current_activity)current_context
/context
在真机上测试的时候都是返回 NATIVE_APPinstall_app(self, app_path)
安装应用APPis_app_installed(self, bundle_id)
在Android中传入包名即可get_screenshot_as_file(self, filename)
传入要保存的路径和文件名,可以使用相对路径save_screenshot(self, filename)
跟上一条的功能类似network_connection
查看当前网络信息,整数值,==!测试出来都是1
版权声明:
作者:Joe.Ye
链接:https://www.appblog.cn/index.php/2023/02/28/appium-python-client-add-contact/
来源:APP全栈技术分享
文章版权归作者所有,未经允许请勿转载。
THE END
0
二维码
打赏
海报
Appium python-client添加联系人
Appium python-client添加联系人
测试平台:红米 Note 4X
操作系统:Android 7.0
ContactsTest.py
#coding=utf-8
from time import sleep
from appium import……
文章目录
关闭
共有 0 条评论