移动端自动化工作原理
python代码->appium-python库->Appium->手机
环境搭建:
1、安装Appium
2、安装Appium-python-client
pip install appium-python-client
查看是否安装成功:pip list
前置参数和参数说明
# 导模块
from appium import webdriver
# 创建一个字典,包装相应的启动参数
desired_caps = dict()
# 需要连接的手机的平台(不限制大小写)
desired_caps['platformName'] = 'Android'
# 需要连接的手机的版本号(比如 5.2.1 的版本可以填写 5.2.1 或 5.2 或 5 ,以此类推)
desired_caps['platformVersion'] = '5.1'
# 需要连接的手机的设备号(andoird平台下,可以随便写,但是不能不写,ios不能乱写)
desired_caps['deviceName'] = '192.168.56.101:5555'
# 需要启动的程序的包名
desired_caps['appPackage'] = 'com.android.settings'
# 需要启动的程序的界面名
desired_caps['appActivity'] = '.Settings'
# 连接appium服务器
driver = webdriver.Remote('http://localhost:4723/wd/hub',desired_caps)
# 退出
driver.quit()
appium基础api
1、如何通过代码跳转其他的app
通过driver对象调用start_activity的方法
driver.start_activity("包名","界面名")
2、获取当前包名和界面名
#获取包名
driver.current_package
获取界面名
driver.current_activity
3、关闭app和驱动对象
关闭当前操作的app,不会关闭驱动对象
driver.close_app()
关闭驱动对象,同时关闭所有关联的app
driver.quit()
区别:
使用 quit() 后会报错,使用close_app() 不会报错
小结:
close_app() 不会关闭驱动对象,只会关闭应用 quit() 会关闭驱动对象
4、安装和卸载以及是否安装app
安装app
app_path:apk的路径
driver.install_app(app_path)
卸载app
bundle_id:app的包名
driver.remove_app(bundle_id)
判断app是否已经安装
bundle_id:app的包名
driver.is_app_installed(bundle_id)
5、将应用置于后台
app放置到后台一定时间后再回到前台,模拟热启动
seconds:后台停留多少秒
driver.background_app(seconds)
作为一个软件测试的过来人,我想尽自己最大的努力,帮助每一个伙伴都能顺利找到工作。所以我整理了下面这份资源,现在免费分享给大家,有需要的小伙伴可以关注【公众号:开心螺蛳粉】自提!
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
行动吧,在路上总比一直观望的要好,未来的你肯定会感谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,请及时加入群:1150305204,里面有各种测试开发资料和技术可以一起交流哦。