• 软件测试用里篇


    目录

    一、软件测试用例

    1、万能公式

    二、设计测试用例的方法介绍

    1、基于需求进行测试用例

    2、等价类

    3、边界值

    4、判定表法

    5、正交法

    6、场景设计法

    7、错误猜测法

    三、测试分类

    1、按照测试对象分

    2、按是否查看代码划分

    3、按照尅发阶段划分


    一、软件测试用例

    1、万能公式

    功能测试+界面测试+性能测试+兼容性测试+易用性测试+安全测试

    二、设计测试用例的方法介绍

    1、基于需求进行测试用例

    需求分析——需求有哪些功能——设计测试点——设计测试用例

    假如说给定的软件需求就是:提示姓名长度为6~15位? 6,7,8,....15—一通过穷举法来设计测试用例,若测试用例通过,则认为功能符合需求要求

    假如说:姓名长度不是6~15位,而是6~200/500位,应该如何来设计测试用例? 通过穷举法来设计肯定是不符合要求!

    2、等价类

    通过分区分块——>使用较少的测试用例达到符合系统的测试覆盖

    针对需求输入范围分成若干个等价类,从其中一个等价类里取出一个用例,若该测试用例全部通过,就认为该测试用例所在的等价类都通过了,反之则就是不通过。

    假如说:姓名长度不是6~15位,而是6~200位,应该如何来设计测试用例?

    等价类又划分为有效等价类和无效等价类

    有效等价类:针对需求来说是有效且有意义的数据的集合

    无效等价类:针对需求来说是无效且没有意义的数据的集合

    例如:

    ①确定有效和无效等价类

    有效等价类:6——>200 无效等价类:小于6大于200

    ②编写测试用例

    3、边界值

    边界值就是等价类的补充

    边界值+次边界值

    4、判定表法

    就是一种表达逻辑判断的工具

    判定表设计测试用例的步骤:

    确认输入条件和输出条件以及它们的关系;画判定表;根据判定表编写测试用例

    需求:订单已提交,订单合计金额大于300元或者订单有红包,则认为该订单属于有优惠的订单,否则属于没有优惠的订单。

    确认输入和输出条件

    输入条件:金额大于300(A)或者有红包(B),并且订单已经提交(C)

    输出条件:是(1)否(2)有优惠

    找出输入和输出条件的关系

    AC BC ABC C A B AB 非ABC

    1 1 1 2 2 2 2 2

    画判定表

    编写测试用例

    1)金额大于300元,没有红包,提交订单,结果为有优惠

    2)金额不大于300元,有红包,提交订单,结果为有优惠

    3)金额大于300元,有红包,提交订单,结果为有优惠

    4)金额不大于300元,没有红包,提交订单,结果为无优惠

    5)金额大于300元,没有红包,不提交订单,结果为无优惠 6)金额不大于300元,有红包,不提交订单,结果为无优惠

    7)金额大于300元,有红包,不提交订单,结果为无优惠

    8)金额不大于300元,没有红包,不提交订单,结果为无优惠

    5、正交法

    需要用到 正交表

    因素数:输入的条件

    水平数:输入条件对应的结果(不是输出条件)

    通过正交法设计测试用例的步骤L4(2^3):找到因素数和水平数;用allparis工具来生成正交表;根据正交表来编写测试用例;补充测试用例.

    6、场景设计法

    根据具体场景进行设计,主要分为基本时间和多个备用事件流

    7、错误猜测法

    错误猜测法是对被测试软件设计的理解,过往经验以及个人直觉,推测出软件可能存在的缺陷,从而针对性地设计测试用例的方法。

    三、测试分类

    1、按照测试对象分

    界面测试(UI测试),可以参考UI设计图

    可靠性测试

    可靠性 = 正常运行时间/(正常运行时间+非正常运行时间)*100%

    可靠性指标一般要求达到4个或5个“9”,即99.99%或者99.999%

    容错性测试

    容错性测试是指系统能够处理异常,用户的错误操作而不至于系统崩溃,从而能够提高系统的可用性。

    兼容性测试

    兼容性测试需求是指明确要测试的兼容环境,考虑软,硬件的兼容,就软件兼容来说,主要考虑以下几个方面:

    系统自身版本的兼容,用户已有数据的兼容,数据兼容是重中之重,对用户来说,数据是最有价值的。

    测试与应用环境的兼容性,比如操作系统,应用平台,浏览器的兼容

    测试与第三方系统以及第三方数据的兼容性

    易用性测试

    软件需要具备简单易上手的属性

    安装卸载测试

    对软件进行安装和卸载查看是否会出现问题

    安全测试

    安全性是指信息安全,是指计算机系统或网络保护用户数据隐私,完整,保护数据正常传输和抵御黑客,病毒攻击的能力。安

    全性测试属于非功能性测试很重要的一个方面,系统常见的安全漏洞和威胁如下:

    输入域,如输入恶性或者带有病毒的脚本或长字符串;

    代码中的安全性问题,如SQL/XML注入

    不安全的数据存储或者传递数据文件,邮件文件,系统配置文件等里面有危害系

    统的信息或者数据;

    有问题的访问控制,权限分配等假冒ID:身份欺骗

    篡改,对数据的恶意修改,破坏数据的完整性

    性能测试

    内存泄漏测试

    2、按是否查看代码划分

    黑盒测试(数据驱动测试或者功能测试):把代码看成一个匣子,不关心内部结构和内部特性,只关心功能是否符合规格说明书

    白盒测试(结果测试或者逻辑驱动测试):检查程序内部的运行状态是否符合预期

    灰盒测试:灰盒测试,是介于白盒测试与黑盒测试之间的一种测试,灰盒测试多用于集成测试阶段,不仅关注输出、输入的正确

    性,同时也关注程序内部的情况。

    3、按照尅发阶段划分

    单元测试:针对系统的最小单元进行测试,最小单元是自定义的

    集成测试:完成单元测试之后,将模块和模块之间集成,按照功能进行测试

    冒烟测试:由测试人员来执行,检查系统主要功能和主要流程是否正常,冒烟测试一般在开发人员开发完毕后提交给测试人员来进行测试 时,先进行冒烟测试,保证基本功能正常,不阻碍后续的测试。如果冒烟测试通过,则测试人员开始进行正式的系统测试,如果不通过,则测试人员可以让开发人员重新修复代码直到冒烟测试通过,再开始进行系统测试。

    系统测试:将软件系统看成是一个系统的测试。包括对功能、性能以及软件所运行的软硬件环境进行测试。

    回归测试:对历史版本以及历史功能进行测试,保证功能符合要求,由于版本较多所以相对难度较大,因此需要借助自动化测试

    验收测试:通常是指让用户进行验证测试,查看是否达到预期的要求

  • 相关阅读:
    空间数据结构管理---RTree(上篇)
    博客无限滚动加载(html、css、js)实现
    如何用CHAT 写会后总结
    NineData:从 Kafka 到 ClickHouse 的数据同步解决方案
    【学位论文】GB/T 7714-2015引用的快捷操作方法
    vue创建一个日历组件
    第一场面试(java),面完,我直接拒了!
    C++进阶篇4---番外-AVL树
    【操作系统学习笔记】文件管理1.3
    undefined /swagger/v1/swagger.json错误解决
  • 原文地址:https://blog.csdn.net/m0_68989458/article/details/125978016