《软件可靠性测试落地实践_马珍珍.pdf》由会员分享,可在线阅读,更多相关《软件可靠性测试落地实践_马珍珍.pdf(29页珍藏版)》请在三个皮匠报告上搜索。
1、软件可靠性测试的落地实践分享人:马珍珍个人简介姓名:马珍珍所在组织:360技术中台专业领域:安全软件测试软件可靠性测试落地实践010203含义及重要性测试实践持续改进可靠性测试含义及重要性什么是软件的可靠性?软件可靠性是指软件产品在规定的条件下和规定的时间内完成规定功能的能力。规定的条件规定的时间规定的功能可靠性测试含义及重要性软件可靠性的子属性01成熟性产品为避免因软件故障而导致失效的能力02可用性系统、产品或组件在需要使用时能够进行操作和访问的程度03容错性产品在发生故障或者违反指定接口规范的情况下,维持规定的性能级别的能力04易恢复性产品在失效的情况下,重建规定的性能级别并恢复受直接影响
2、的数据的能力05依从性产品遵循与可靠性相关的标准、约定或法规的能力可靠性测试含义及重要性对四个子属性的理解成熟性易恢复性可用性容错性例:对浏览器来说,成熟性可以理解为产品失效的概率,比如持续运行一段时间后出现页面无法加载或显示错误等问题的概率。例:对浏览器来说,容错性可理解为产品应对用户“错误操作”的能力,例如输入无效网址或点击损坏链接时,应给出合适提示,而非无响应或崩溃。例:对浏览器来说,易恢复性可理解为浏览器在出现意外情况(比如无响应、崩溃)后,能否自动或半自动地回到之前的状态,例如恢复会话、标签页和数据等。例:可用性代表了成熟性、容错性和易恢复性的组合,统计浏览器在一段时间内出现故障的时
3、间和可以正常使用的时间比例,得到的就是浏览器的可用性。可靠性测试含义及重要性为什么我们关心软件的可靠性?用户体验业务连续性经济效益安全性和合规性社会影响可靠性测试含义及重要性软件可靠性测试是指在预期的使用环境中,为检出软件缺陷,验证和评估是否达到用户对软件可靠性需求而组织实施的一种软件测试。一般在系统测试阶段和交付验收阶段进行。软件可靠性测试的含义可靠性测试含义及重要性软件可靠性测试的原则测试数据记录要真实、准确尽早开始测试测试要全面数据分析与改进模拟真实环境可靠性测试实践可靠性测试实践可靠性测试实践流程可靠性测试实践流程软件可靠性测试实践流程可靠性测试实践实践中的关键点实践中的关键点实践中的
4、关键点:需求分析-收集与产品相关的可靠性需求了解产品的使用场景和用户需求通过收集和分析产品的使用场景和用户需求,可以了解产品在各种情况下的使用条件、负载要求、操作频率等,为可靠性测试提供依据。参考类似产品的可靠性数据通过收集和分析已有类似产品的可靠性数据,可以了解产品的一般可靠性水平,为新产品的可靠性测试提供参考和比较基础。考虑潜在的可靠性问题除了产品的正常使用条件外,还需要考虑潜在的可靠性问题,例如产品在安装和维护过程中的潜在问题和影响,以便在测试中加以考虑和评估。可靠性测试实践实践中的关键点实践中的关键点实践中的关键点:实践中的关键点:需求分析明确软件失效等级失效等级失效等级描述描述1:关
5、键性失效:关键性失效整个系统中止或严重毁坏数据库整个系统中止或严重毁坏数据库2:严重性失效:严重性失效重要功能无法运行,并且没有替代的运行方式重要功能无法运行,并且没有替代的运行方式3:普通失效:普通失效绝大部分功能仍然可用,次要功能受到限制或要采用替代方式绝大部分功能仍然可用,次要功能受到限制或要采用替代方式可靠性测试实践实践中的关键点实践中的关键点实践中的关键点:实践中的关键点:需求分析明确度量指标属性属性名称名称描述描述指标指标成熟性故障修复率度量检测到的与可靠性相关的故障修复比例故障修复率于90%平均失效间隔时间(MTBF)度量软件在正常运行期间的故障频率平均失效间隔时间大于7*24小
6、时周期失效率度量在特定时间段内软件失效的概率周期失效率小于1%测试覆盖率度量实际执行的软件功能、运行场景与预期的软件功能、运行场景的比例测试覆盖率不低于95%可用性系统可用性度量软件可用状态的时间系统可用性不低于99.999%平均宕机时间度量软件失效时的不可用时间平均宕机时间不高于30min容错性避免失效率度量软件能控制多少种故障模式以避免关键或严重的失效避免失效率不低于98%组件的冗余度度量为避免系统失效而安装的冗余组件比例组件冗余度不低于10%平均故障通告时间度量系统报告故障的发生的快慢程度平均故障通告时间不大于5min易恢复性平均恢复时间度量软件从