21. App自动化你用的什么工具?
框架:Appium
编译环境和工具:python3.7和PyCharm
环境:Android sdk
第三方模拟器:夜神、蓝叠等模拟器
定位工具:uiautomatorviewer
实时日志查看:ddms
22. App自动化测试脚本主要添加的配置有哪些?
deviceName:设备名称
platformName:测试平台
platformVersion:平台版本
AppPackage:测试App包名
AppActivity:测试App启动入口
23.在App内乱点出现的异常如何复现?
基本monkey命令:adb shell monkey –p 包名 其他参数 次数
同样的monkey命令加上-s 输入上一次操作的seed值进行复现。
24. App测试与H5测试有啥区别?
App是使用原生系统内核的,相当于直接在系统上操作,是我们传统意义上的软件,更加稳定,
H5的App先得调用系统的浏览器内核,相当于是在网页中进行操作,较原生App稳定性稍差,似乎还没有百万级用户量的H5
H5最大的优点是可以跨平台,开发容易,App的话需要用ANDROID的语言和IOS的语言各自写,相对来说开发比较麻烦,H5只要开发一套, 简单的说:H5是基于web,App原生基于客户端。
总之有以下区别:
1、用户获取渠道的区别:小程序只要通过用户的分享、二维码和搜索小程序来获取;APP主要通过应用市场下载而获得。
2、下载和安装的区别:小程序不需要进行下载,清除时直接删除程序就行了;APP需要下载和安装,且卸载的时候需要清除数据。
3、开发周期的区别:小程序开发周期一般在两周左右;APP的开发周期在2、3个月左右。
4、发布审核上的区别:小程序在需要发布的公众平台上进行审核,审核周期一般比较短;APP需要应用商店进行审核,这个时间周期一般比较长。
5、权限上的区别:比如微信小程序需要验证是否有微信授权,未授权/授权登录程序,同一微信号不同手机登录查看数据显示情况;APP测试则需要考虑是否可以访问手机通讯录、相册、相机等权限;
6、兼容性测试:APP需要在不同手机操作系统、不同的分辨率检验;小程序除了需要在不同手机操作系统检验、分辨率(不同手机型号,页面图片显示等)检验,还需要在不同微信版本(测试当前微信版本发布的项目和升级版微信后测项目)、二维码的兼容性(一般小程序会有二维码分享,分享给朋友的图片信息和分享到朋友圈的二维码显示、是否识别等)
7、缓存方面:缓存的作用是提高程序的流畅度、减少网络请求,节省服务器资源,有时候用户会进行清理缓存的情况。app和小程序都会存在缓存,但小程序最大只有10M的本地缓存,测试时需要考虑清除缓存时强制退出、后台清理、关机等情况。
25. App类型有哪些?分别有什么优缺点?
1、Native App:传统的原生App开发模式,android基于Java语言。
优点:直接依托于操作系统,交互性最强,性能最好;功能最为强大,特别是在与系统交互中,几乎所有功能都能实现。
缺点:开发成本高,无法跨平台,不同平台Android和iOS上都要各自独立开发;门槛较高,原生人员有一定的入门门槛,相比广大的前端人员而言,较少 更新缓慢,特别是发布应用商店后,需要等到审核周期 维护成本高。
2、Web App:即移动端的网站,将页面部署在服务器上,然后用户使用各大浏览器访问,不是独立App,无法安装和发布,类似于现在所说的轻应用
优点:开发成本低,可以跨平台,调试方便;维护成本低 更新无需通知用户,不需要手动升级 无需安装App,不会占用手机内存。
缺点:无法获取系统级别的通知,提醒,动效等等;用户留存率低 设计受限制诸多 体验较差
3、Hybrid App:混合应用程序,在应用程序中嵌入了webview,通过webview访问网页。
优点:开发成本较低,可以跨平台,调试方便 维护成本低,功能可复用;功能更加完善,性能和体验要比起web App好太多 更新较为自由
缺点:相比原生,性能仍然有较大损耗 不适用于交互性较强的App