基于GUI的Android自动化性能测试方法的研究和实现
发布时间:2020-12-16 10:29
电子移动设备的快速发展,使得移动应用软件已经拥有了大量的用户群体。现在的手机操作系统市场主要由Android和iOS占据。Android系统受益于其开源性和跨平台性,近几年来已经逐步占据了大部分的市场份额。根据最新统计,Android系统已经拥有了87.7%的市场,成为了最受欢迎的移动端设备。Android应用程序(以下简称App)的运行是基于事件驱动的模型,在运行过程中大量使用了消息队列等函数回调的方法。这使得传统的测试技术不适用在这类应用程序上,导致开发者难以保证程序的质量。现有的相关测试工作将焦点放在App运行的正确性、稳定性和占用系统性能资源的合理性上,却忽略了App在运行过程中的流畅性。并且现有的性能测试工作虽然能发现CPU异常、内存泄漏、资源未释放等问题,但测试手段通常采用手工执行的方式。由于现有的Android应用软件大部分都是使用了敏捷开发模式,具有快速开发、持续迭代的特点。因此若继续使用手工测试,不但重复工作量大,而且存在较多的不稳定性,难以保证每次测试的全面性。因此,针对上述问题和挑战,本文提出了基于GUI的Android自动化性能测试框架PerDroid。PerD...
【文章来源】:华东师范大学上海市 211工程院校 985工程院校 教育部直属院校
【文章页数】:64 页
【学位级别】:硕士
【部分图文】:
App应用数量增长趋势图
测试成本也日益提高。若继续使用手工测试的方法对 App 进行测试,不仅效同时也依赖测试人员对业务熟悉的程度。受到测试人员代码能力的影响,测试难以达到预期的效果。因此,我们不仅要在对 App 进行正确性、稳定性的测试动化的测试技术,也应在性能测试中使用相应的技术,提高测试效率和程序质测试成本。ndroid 应用程序基于事件驱动的运行方式和其特殊的生命周期管理使得整个程性的方式运行[8],并且在运行过程中存在大量的方法回调、事件监听和多线程些特征增加了运行过程中的不确定性,给提高自动化测试的完备性带来了极大Android 手机的运行环境复杂,如蓝牙接收、GPS 信号变化、电量信息都有可App 的运行状态。这些状态的改变,都可能导致用户在使用过程当中,意外遇面不流畅,甚至崩溃的情况,引起不良的体验。
华东师范大学硕士学位论文当该 Activity 处于运行态时,被另一个 Activity 遮挡,失去焦点之后,Android 框架回调 onPaused()方法,当转成完全不可见后,回调 onStoped()方法。当系统资源不足时,系统回调 onDestroy()方法,使该 Activity 进入终止态。当 Activity 处于停止态时,用户重新将该 Activity 切回栈顶,展现在手机页面上时,Android 框架会依次调用 onRestart(), onStart()和 onResume()方法。当 Activity 处于暂停态时,则只回调 onResume()方法。最终使得 Activity 进入运行态。图 4 表现的是 Activity 状态变迁时的原因和调用的函数顺序。
本文编号:2920007
【文章来源】:华东师范大学上海市 211工程院校 985工程院校 教育部直属院校
【文章页数】:64 页
【学位级别】:硕士
【部分图文】:
App应用数量增长趋势图
测试成本也日益提高。若继续使用手工测试的方法对 App 进行测试,不仅效同时也依赖测试人员对业务熟悉的程度。受到测试人员代码能力的影响,测试难以达到预期的效果。因此,我们不仅要在对 App 进行正确性、稳定性的测试动化的测试技术,也应在性能测试中使用相应的技术,提高测试效率和程序质测试成本。ndroid 应用程序基于事件驱动的运行方式和其特殊的生命周期管理使得整个程性的方式运行[8],并且在运行过程中存在大量的方法回调、事件监听和多线程些特征增加了运行过程中的不确定性,给提高自动化测试的完备性带来了极大Android 手机的运行环境复杂,如蓝牙接收、GPS 信号变化、电量信息都有可App 的运行状态。这些状态的改变,都可能导致用户在使用过程当中,意外遇面不流畅,甚至崩溃的情况,引起不良的体验。
华东师范大学硕士学位论文当该 Activity 处于运行态时,被另一个 Activity 遮挡,失去焦点之后,Android 框架回调 onPaused()方法,当转成完全不可见后,回调 onStoped()方法。当系统资源不足时,系统回调 onDestroy()方法,使该 Activity 进入终止态。当 Activity 处于停止态时,用户重新将该 Activity 切回栈顶,展现在手机页面上时,Android 框架会依次调用 onRestart(), onStart()和 onResume()方法。当 Activity 处于暂停态时,则只回调 onResume()方法。最终使得 Activity 进入运行态。图 4 表现的是 Activity 状态变迁时的原因和调用的函数顺序。
本文编号:2920007
本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/2920007.html