App可靠性设计

本文探讨了App的可靠性设计,包括六条基本准则,如故障检测、避免和容错。分析了ANR、启动失败、闪退等常见故障原因,并分享了Android应用的资源异常、特殊行为和兼容性问题案例。最后提出了业务功能、数据源、资源和编码等方面的可靠性设计准则。
摘要由CSDN通过智能技术生成

可靠性是软件一个重要的质量属性,它关注的是软件功能持续的可用性,以及出现故障之后是否能够容错,是否能快速的恢复使用。

可靠性六条基本准则

1、故障应在第一时间被检测和感知;

2、能避免的故障都不应该发生;

3、不可避免或无法预测的故障,需进行容错;

4、已发生故障,需在最短时间内得到恢复;

5、对象状态和生命期都应该是完备的,闭合的;

6、资源必须合理和均衡地使用;

应用作为直接提供用户服务,与用户交互最多的环节,其可靠性对用户体验的影响巨大,甚至会高于系统对用户造成的影响。

可靠性故障的现象及根因

应用不响应(ANR)

(1)应用将耗时操作或者同步调用放在UI线程,广播接收器里处理;

(2)应用资源异常,如内存,文件,线程等的滥用、泄露;

(3)消息、通知过载,忙不过来;

(4)获取系统资源阻塞,比如访问文件系统,数据库,网络,CPU等;

应用启动不起来,界面卡住冻屏,黑屏,白屏

(1)应用启动阶段必现闪退;

(2)应用在启动阶段做了特殊的耗时、阻塞动作;

(3)应用事件处理bug,例如:应用接收事件但不做任何响应;

(4)应用资源异常,获取系统资源阻塞;</

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
文章主要是Android软件可靠性测试的研究。首先介绍了国内外对软件可靠性的研究现状及发展趋势,由此引入了Android软件可靠性测试的研究。作为软件质量的重要衡量标准,软件的可靠性对软件的顺利运行有着至关重要的作用。因此文章的研究重点如下: (1)对于Android软件,收集用户对软件的操作习惯数据是可靠性测试的前提。本文提出了如何收集用户操作习惯数据的方法,并依此设计出带有记录用户操作习惯的Android文件管理器,为对其进行使用模型的建模打下了基础。 (2)目前对于Android手机软件可靠性测试用例,还没有一个专门的自动化生成工具,这就导致了生成测试用例成本的增加和效率的低下。本文根据Eclipse插件开发编了Android软件测试用例自动生成工具,提出了设置状态间转移概率算法和测试用例生成算法,实现了用可视化的方式编Android软件测试用例,并能根据用户的操作习惯建立软件的马尔科夫链模型,最终生成符合可靠性测试要求的测试用例。 (3)对生成的软件的测试用例,用Android软件可靠性自动化测试工具进行测试,收集软件的失效数据。根据失效数据利用MATLAB仿真选取合适的可靠性评估模型。通过分析,文章最后选取了J-M模型最为可靠性评估的拟合模型,利用选取的拟合模型对Android软件的可靠性进行了评估,用以指导软件可靠性测试的进行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值