一、app测试
1.app测试类型
(1)app手工测试:
功能测试在web,在app端进行手工测试
(2)app自动化测试(app的UI自动化,app接口自动化 测试)
用代码或工具代替手工测试app
2、web端和app端测试的区别?
单纯从功能测试的层面上来讲的话,APP 测试、web 测试 在流程和功能测试上是没有区别的。
(1)根据两者载体不一样,则区别如下:
系统结构方面
web项目,b/s架构,基于浏览器的;web测试只要更新了服务器端,客户端就会同步会更新。
app项目,c/s结构的,必须要有客户端;app 修改了服务端,则客户端用户所有核心版本都需要进行回归测试一遍。
(2)性能方面
web项目 需监测 响应时间、CPU、Memory
app项目 除了监测 响应时间、CPU、Memory外,还需监测 流量、电量等
(3)兼容方面
web项目:
1. 浏览器(火狐、谷歌、IE等)
2. 操作系统(Windows7、Windows10、Linux等)
app项目:
1. 设备系统: iOS(ipad、iphone)、Android(三星、华为、联想等) 、Windows(Win7、Win8)、OSX(Mac)
2. 手机设备可根据 手机型号、分辨率不同
(4)相对于 Wed 项目,
app端测试:
=====================================================
安卓虚拟机机制解释:android本身不是为触摸屏打造的,所以所有的应用都是运行在一个虚拟的环境中,由底层传输数据到虚拟机中,再由虚拟机传递给用户UI,任何程序都就可以轻松访问其他程序文件。
② 两者后台制度不同:IOS中任何第三方程序都不能在后台运行;安卓中任何程序都能在后台运行,直到没有内存才会关闭。
③ IOS中用于UI指令权限最高,安卓中数据处理指令权限最高。
④ ios系统流畅性更具优势。Android系统采用虚拟机的运行机制,需要消耗更多系统资源。Android系统使用一段时间后容易出现卡顿,而ios系统则很少出现卡顿现象,并且Android系统的桌面灵敏性不如ios系统。
⑤ Android的编程语言是JAVA,而iOS的则为Objective-C。Objective-C的优势是效率高但比较“唯一”,而JAVA的优势则是跨平台不过运行效率相对偏低。
⑥ 操作界面来讲,ios系统界面单一。而Android的界面可以根据自己的喜好来设置,更加多样化。
⑦ 省电的角度来讲,ios系统更加省电。这是系统机制决定的。Android会占用更多的资源来支撑系统运行,导致了它会比较费电。
=========================================================================================
(4)app测试包 (apk包)
测试app下载apk
线上包:生产包 (上线产品)
测试包:(灰度包) 没有上线
开发提交代码包======合并代码包========jenkins构建=======控制台生成一个下载连接,下载(扫二码)
下载方式:
(1)通过扫二维码,通 过扫码下载最新的灰度包
(2)通过jenkins自动打包,生成下载地址,点击链接下载灰度包
在线生成二维码:
https://cli.im/
=========================================================================================
4、app测试流程
1)看需求,分析需求
(2)写测试计划(自动化用例场景设计)
(3)写用例( 自动化脚本的编写)
(4)搭建环境(需要下载app测试包)
(5)部署项目包
(5)测试(测试前:冒烟测试,测试中:执行用例 修改bug,验证bug,又要重新打包 安装新的app包在测试)
(6)输出app测试报告
=========================================================================================
5、搭建app自动化测试环境