App 测试
1. 简述 Android 四大组件及生命周期?
Android 的四大组件包括:Activity(活动)、Service(服务)、
BroadcasReceiver、(广播)
ContentProvider(内容提供者)
2. 当点击 APP 图标启动程序,说明将要发生那些过程?
1.点击桌面 app 图标,Launcher 进程采用 Binder IPC 向 system_server 进程发起 startActivity 请求;
2.system_server 进程收到请求后,向 zygote 进程发送创建进程的请求(zygote 进程是 Android 系统的第一个
进程,zygote 意为受精卵,所有进程都是由它孵化而来)
3.zygote 进程 fork 出新的子进程,即 App 进程;
4.App 进程,通过 Binder IPC 向 system_server 进程发起 attachApplication 请求
5.system_server 进程收到请求后,进行一系列的准备工作,通过 Binder IPC 向 App 进 程 发 送
scheduleLaunchActivity 请求
6.App 的 binder 线程(Application Thread)在收到请求后,通过 handler 向主线程发送 LAUNCH_ACTIVITY
消息
7.主线程收到 Message 后,通过发射机制创建目标 Activity,并回调 Activity.onCreate()方法
3. APP 测试的内容主要包括哪些,如何开展?(功能,性能,稳定性,兼容性,异常测试,升级、安装、卸载)
功能测试:
1.业务逻辑正确性测试:依据:产品文档->测试用例编写
性能测试:
1.资源消耗:
cpu的占用、内存的占用、流量的耗用、电量的耗用
2.响应能力测试:
App安装、卸载的响应时间,启动消耗时间的测试(热启【后台以有该APP的进程】、冷启【后台无改APP的进 程】),页面加载时间的测试
3.负载测试:
进行负载测试是否有异常(系统正常运行下的性能指标)
4.压力测试:
进行压力测试是否有异常,进行压力测试看APP能承受的最大性能指标(系统性能下降的拐点)
稳定性测试
稳定性测试的时候常会用monkey进行。主要通过monkey的伪随机事件流进行大量的点击、滑动等操作,这是为了检测出产品中隐藏的crash、anr等缺陷,确保没有问题
兼容性测试:
1.系统版本:Android:官方版本,定制版本;IOS:官方提供版本
2.分辨率:720 * 1280 1080* 1920
3.网络情况:2g 3g 4g 5g Wi-Fi
异常测试
1.热启动应用:应用在后台长时间待机;应用在后台待机过程中,手机重启
2.网络切换和中断恢复:网络切换;中断恢复:
3.电话信息中断恢复
升级,安装,卸载测试<