关于测试的静态方法学习笔记

在学习软件测试时的一些笔记,可以加深对测试的理解:

静态测试技术概述:

1.静态测试是不执行被分析的程序,而是通过对模块源代码进行研读、找出其中的错误或可疑之处,收集一些度量数据。

2.静态测试包括对软件产品的需求和设计规格说明书的评审、对程序代码的复审等。

3.静态测试的查错和分析功能是其他方法所不能替代的,可以采用人工或者计算机辅助静态测试手段进行

静态测试技术概述:

动态测试是软件测试中使用最为普遍的方法,通过运行程序发现错误,通过观察代码运行过程来获取系统行为、变量实时结果、内存、堆栈、线程以及测试覆盖率等各方面的信息,从而判断系统是否存在问题,或者通过有效的测试用例、对应的输入输出关系来分析被测程序的运行情况,从中发现缺陷。检测。

在软件测试中,比较常见的是主动测试方法,测试人员主动向被测试对象发送请求,或借助数据、事件驱动被测试对象的行为,来验证被测试对象的反应或输出结果。在主动测试中,测试人员和被测试对象之间发生直接相互作用,而且被测试对象完全受测试人员的控制,被测试对象处于测试状态,而不是实际工作状态。

由于主动测试中被测试对象受人为因素影响较大,而且一般是在测试环境中进行,而非软件产品的实际运行环境,所以主动测试不适应产品的在线测试。为了解决产品在线测试,这就需要用到被动测试。在被动测试方法中,软件产品在实际环境中运行,测试人员被动地监控产品的运行,通过一定的机制来获取系统运行的数据,包括输入、输出数据。

逻辑覆盖法以程序内部逻辑结构为基础,通过对程序逻辑结构遍历实现程序测试的覆盖。

从覆盖源程序语句的详尽程度,可以分为

1.语句覆盖

指的是代码中所有的语句都至少执行一遍 虽然覆盖了可执行语句,但是不能检查判断逻辑是否有问题 是很不充分的一种测试,是最弱的逻辑覆盖准则 测试覆盖率工具:如TrueCoverage、PureCoverage

2.判定覆盖

指的是设计足够的测试用例,使得每一个判断获得每一种可能的结果至少一次,即对被测试模块中的每一个判断要分别取真和假各一次进行测试。

3.条件覆盖

  指程序中每个判断中的每个条件的所有可能的取值至少要都执行一次 完全的条件覆盖并不能满足完全的判定覆盖

4.条件判定覆盖

   条件判定覆盖是判定覆盖和条件覆盖的组合,指的是设计足够的测试用例,使得判定中每个条件的所有可能的取值至少出现一次,并且每个判定取到的各种可能的结果也至少出现一次。 有两者的简单性并且没有两者的缺点,但是其没有考虑单个判定对整体结果的影响。

5.条件组合覆盖

条件组合覆盖又称多条件覆盖,指的是设计足够的测试用例,使得判定条件中每一个条件的可能组合至少出现一次。 满足多条件覆盖的测试用例一定满足判定覆盖、条件覆盖和条件判定覆盖。 缺点: 它可能是非常冗长乏味的来决定一个需要的测试用例的最小设置,特别是对于一些非常复杂的布尔表达式; 对于相似的复杂性的条件却需要非常大的变化; 可能会存在路径遗漏。

6.路径覆盖

路径覆盖是指测试用例中执行到的路径数量占被测试模块所有可能的执行路径的比率。在路径覆盖中,我们只需要考虑所有可能的执行路径,对于不可能执行的路径,我们是不需要考虑的。 对于一些大型程序,其包含的路径总量是非常庞大的,如果要把所有路径都找出来去覆盖也是不现实的。需要以下一些方法来简化程序中的路径

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿空阿空空

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值