软考126-上午题-【软件工程】-测试方法

一、测试方法

在软件测试过程中,应该为定义软件测试模板,即将特定的测试方法和测试用例设计放在一系列的测试步骤中。

软件测试方法分为:静态测试和动态测试。

1-1、静态测试。

静态测试是指被测试程序不在机器上运行,而是采用人工检测和计算机辅助静态分析的手段对程序进行检测。

① 人工检测。

人工检测不依靠计算机而是依靠人工审查程序或评审软件,包括代码检查静态结构分析和代码质量度量等。

② 计算机辅助静态分析。

利用静态分析工具对被测试程序进行特性分析,从程序中提取一些信息,以便检查程序逻辑的各种缺陷和可疑的程序构造。

1-2、动态测试。

动态测试是指通过运行程序发现错误。在对软件产品进行动态测试时可以采用黑盒测试法和白盒测试法。

测试用例由测试输入数据和与之对应的预期输出结果组成。在设计测试用例时,应当包括合理的输入条件和不合理的输入条件。

1、黑盒测试

黑盒测试也称为功能测试,在完全不考虑软件的内部结构和特性的情况下,测试软件的外部特性。

进行黑盒测试主要是为了发现以下几类错误:

(1)、是否有错误的功能或遗漏的功能?

(2)、界面是否有误?输入是否正确接收?输出是否正确?

(3)、是否有数据结构或外部数据库访问错误?

(4)、性能是否能够接受?

(5)、是否有初始化或终止性错误?

常用的黑盒测试技术有:

等价类划分、边界值分析、错误推测和因果图等。

(1)、等价类划分。

等价类划分法将程序的输入域划分为若干等价类,然后从每个等价类中选取一个代表性数据作为测试用例。每一类的代表性数据在测试中的作用等价于这一类中的其他值,这样就可以用少量代表性的测试用例取得较好的测试效果。

等价类划分有两种不同的情况:有效等价类和无效等价类。在设计测试用例时,要同时考虑这两种等价类。

示例:要求x在0~100之内

  • x<0,x>100:无效等价类
  • 0<= x <= 100,有效等价类

(2)、边界值分析

输入的边界比中间更加容易发生错误,因此用边界值分析来补充等价类划分的测试用例设计技术。

边界值划分选择等价类边界的测试用例,既注重于输入条件边界,又适用于输出域测试用例。

示例:

(3)、错误推测

错误推测是基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性地设计测试用例的方法。其基本思想是列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据它们选择测试用例。

(4)、因果图

因果图法是从自然语言描述的程序规格说明中找出因(输入条件)和果(输出或程序状态的改变),通过因果图转换为判定表。

2、黑盒测试的相关真题

真题1:

真题2:

黑盒测试:

  • 等价值划分
  • 边界值分析
  • 错误推测
  • 因果图

真题3:

设计测试用例,要有一个对的,一个错误的,就是一个好的测试用例。

两个都对的情况下,也是一个好的测试用例;

两个都是错误的情况下,是不好的测试用例。

真题4:

真题5:C

可以这么理解:

当有一个输入,有多个错误的输入值,导致结果是错误的,就无法判断具体是哪个值导致的错误结果,所以是不好的测试用例。

相关推荐
Willliam_william17 分钟前
SystemC学习(1)— SystemC安装与HelloWorld
学习
sealaugh3222 分钟前
aws(学习笔记第一课) AWS CLI,创建ec2 server以及drawio进行aws画图
笔记·学习·aws
布丁不叮早起枣祈22 分钟前
10.5学习
学习
CXDNW26 分钟前
【网络篇】计算机网络——应用层详述(笔记)
服务器·笔记·计算机网络·http·web·cdn·dns
向上的车轮31 分钟前
Django学习笔记五:templates使用详解
笔记·学习·django
看山还是山,看水还是。1 小时前
MySQL 管理
数据库·笔记·mysql·adb
蒲公英10012 小时前
vue3学习:axios输入城市名称查询该城市天气
前端·vue.js·学习
训山2 小时前
【11】纯血鸿蒙HarmonyOS NEXT星河版开发0基础学习笔记-模块化语法与自定义组件
笔记·学习·华为·harmonyos·鸿蒙系统
①个程序员2 小时前
thinkphp 学习记录
学习
alfiy3 小时前
Elasticsearch学习笔记(四) Elasticsearch集群安全配置一
笔记·学习·elasticsearch