Unity粒子特效系列-龙卷风预制体做好了,unitypackage包直接用!
姐姐喊我解锁套娃新技能:FairyGUI在Unity中实现List嵌套List/立体画廊等,玩出花儿来
众所周知,人生是一个漫长的流程,不断克服困难,不断反思前进的过程。在这个过程中会产生很多对于人生的质疑和思考,于是我决定将自己的思考,经验和故事全部分享出来,以此寻找共鸣 !!!
专注于Android/Unity和各种游戏开发技巧,以及各种资源分享(网站、工具、素材、源码、游戏等)
有什么需要欢迎私我,交流群让学习不再孤单。
适合要入门自动化测试的人阅读,小空不是测试人员,在请教了测试的朋友后了解到的相关知识。
有时候开发完会发现莫名奇妙的Bug,Bug 来了咱不怕,那就解决呗。但是这 Bug贼得很,几个小时甚至几天出来调戏你一次,撒手就跑,就问你服不服。所以为了让 App 中的 Bug 尽可能的减少,好好研究了下 Android 平台的自动化测试,在此总结一下。
😜自动化总纲
Android 平台的自动化测试可以从两个方向入手
-
Android 端的自动化测试框架
-
各大云测试平台
-
腾讯优测云测试平台
-
华为开发者联盟
-
Testin 云测
测试的内容包括:
-
兼容性测试:安装、启动、登录、遍历、卸载
-
功能测试:行为检测、手势模拟、功能验证
-
稳定性测试:CPU/内存/Crash/ANR/功能异常等
-
场景测试:模拟真实网络场景,2G、3G、4G、wifi 网络的切换
Android 自动化测试框架
通过代码完成相应的测试用例,尽量减少人工的重复性操作,提升工作质量解放双手去创造更有意思的。伴随的缺点就是对测试人员的开发需求要高一些,而且有限,作为辅助开发的选择。
各大云测试平台
可以提供市面上大部分机型,兼容性测试很广,测完之后都会有详细的测试报告,位置定位比较明确。缺点嘛,就一个「收费」。毕竟人家也是要恰饭的。
😜真经上卷:自动化测试框架
第一重-ADB
开始前,我们先熟悉下ADB几个命令,因为底层的操作其实就是adb的各种真气流转,这点要了解。
安装卸载
adb install 安装包地址 adb uninstall 包名
adb 获取包名/界面名
adb shell dumpsys window windows | findstr mFocusedApp
发送文件到手机
adb push 电脑文件路径 手机文件夹路径
从手机拉取文件
adb pull 手机文件路径 电脑文件夹路径
打印日志信息
adb logcat 找到异常E级别
第二重-UIAutomator2
Google提供的uiautomator库可以获取屏幕上任意一个APP的任意一个控件属性,并对其进行任意操作,但有缺点:
-
只能使用Java语言 ;
-
Android版本大于4.4,
-
Python大于2.7 必须每次被上传到设备上运行;
为了解决以上缺点,才有了uiautomator2。uiautomator2是一个Android UI自动化框架,支持Python编写测试脚本对设备进行自动化。
基本原理
uiautomator2的底层是基于Google uiautomator,原理是在手机上运行了一个http服务器,将uiautomator中的功能开放出来,然后再将这些http接口,封装成Python库。
安装uiautomator2
-
pip install --pre uiautomator2
-
pip install pillow
测试试验脚本
import uiautomator2 as u2
from time import sleep
d = u2.connect(‘192.168.1.66’)
启动App
d.app_start(“com.zhima.app”)
搜索
d(resourceId=“com.zhima.app:id/j0”).click()
输入关键字
d(resourceId=“com.zhima.app:id/p9”).set_text(“flyme”)
搜索按钮
d(resourceId=“com.zhima.app:id/tp”).click()
sleep(2)
停止app
d.app_stop(“com.zhima.app”)
此框架说到这就结束了,有兴趣的可自信修炼,因他不是跨平台的,我们先放一放,重点看第三重-Appium