1. web元素定位七种方式
优先使用的6种
- find_element_by_id (返回一个元素)
- find_element(s)_by_class_name (根据类名获取元素列表)
- find_element(s)_by_name (根据标签的name属性值返回包含标签对象元素的列表)
- find_element(s)_by_link_text (根据连接文本获取元素列表)
- find_element(s)_by_partial_link_text (根据链接包含的文本获取元素列表)
- find_element(s)_by_tag_name (根据标签名获取元素列表)
- find_element(s)_by_css_selector 根据css选择器获取
万不得已下使用的两个
- find_element(s)_by_css_selector (根据css选择器来获取元素列表)
- find_element(s)_by_xpath (返回一个包含元素的列表)
2. app元素定位3种方式
- by_id
- by_class_name
- by_xpath
现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:691998057【暗号:csdn999】
3. adb常用命令
- adb 帮助:adb --help
- 启动adb 服务:adb start-server
- 关闭adb 服务:adb kill-server
- 获取设备号:adb devices
- 获取系统版本:adb shell getprop ro.build.version.release
- 发送文件到手机:adb push 电脑端⽂件路径/需要发送的文件,手机端存储的路径
- adb push C:\Users\win\Desktop\xx.png /sdcard
- 从手机拉取文件: adb pull 手机端的路径/拉取文件名 电脑端存储文件路径
- adb pull /sdcard/xx.png C:\Users\win\Desktop
- 查看手机运行日志: adb logcat
- 进入到手机终端: adb shell
- 安装app到手机: adb install 路径/xxx.apk
- 卸载手机app : adb uninstall app
- 获取app启动包名和启动名(⚠手机需要先打开对应app)
- Mac/Linux: adb shell dumpsys window windows | grep mFocusedApp
- 在 Windows 终端运⾏: adb shell dumpsys window w | findstr mCurrent
- 获取app启动时间: adb shell am start -W 包名/.启动名
- 查看设备ip地址:
- adb shell ifconfig wlan0
- adb shell netcfg
- 查看设备cpu信息: adb shell cat /proc/cpuinfo
- 查看设备内存信息: adb shell cat /proc/meminfo
- 点亮屏幕: adb shell input keyevent 224
- 熄灭屏幕: adb shell input keyevent 223
4. 键盘操作常用函数
- send_keys(Keys.BACK_SPACE)删除键(BackSpace)
- send_keys(Keys.SPACE)空格键(Space)
- send_keys(Keys.TAB)制表键(Tab)
- send_keys(Keys.ESCAPE)回退键(Esc)
- send_keys(Keys.ENTER)回车键(Enter)
- send_keys(Keys.CONTROL,‘a’) 全选(Ctrl+A)
- send_keys(Keys.CONTROL,‘c’)复制(Ctrl+C)
- send_keys(Keys.CONTROL,‘v’) 全选(Ctrl+V)
- send_keys(Keys.CONTROL,‘x’)复制(Ctrl+X)
5. 鼠标操作常用函数
- context_click() 右击 --> 此方法模拟鼠标右键点击效果
- double_click() 双击 --> 此方法模拟双标双击效果
- drag_and_drop() 拖动 --> 此方法模拟双标拖动效果
- move_to_element() 悬停 --> 此方法模拟鼠标悬停效果
- perform() 执行 --> 此方法用来执行以上所有鼠标方法
6. apppium:
开源、跨平台的UI自动化测试工具,支持多种语言编写的测试脚本
原理:
- test scripts(测试脚本发送一个请求到appium server)
- appium server接收到请求后进行解析并把请求转发给 bootstrap.jar。
- jar接收到appium的命令,调用UIAutomator命令实现操作
- 最终结果由bootstrap.jar返回给Appium server。
7. fixture
- 必须继承unittest.TestCase类,setUp、tearDown才是一个Fixture;
- setUp:一般做初始化工作,比如:实例化浏览器、浏览器最大化、隐式等待设置
- tearDown:一般做结束工作,比如:退出登录、关闭浏览器
- 如果一个测试类有多个test开头方法,则每个方法执行之前都会运行setUp、结束时运行tearDown
end今天的分享就到处结束了!底赞关注不迷路!