所谓静态测试(static testing)就是不实际运行被测软件,而只是静态地检查程序代码、界面或文档中可能存在的错误的过程。
从概念中我们可以知道,其包括对代码测试、界面测试和文档测试三个方面:
1.对于代码测试,主要测试代码是否符合相应的标准和规范。
2.对于界面测试,主要测试软件的实际界面与需求中的说明是否相符。
3.对于文档测试,主要测试用户手册和需求说明是否符合用户的实际需求。
其中后两者的测试容易一些,只要测试人员对用户需求很熟悉,并比较细心就很容易发现界面和文档中的缺陷。而对程序代码的静态测试要复杂得多,需要我们按照相应的代码规范模板来逐行检查程序代码。那么我们从哪里获得这个规范模板呢?其实没有一个统一的标准,每个公司内部一般都有自己的编码规范,比如《c/c++编码规范》,你只需要按照上面的条目逐条测试就可以了。当然很多白盒测试工具中就自动集成了各种语言的编码规范,比如parasoft公司的C++Test就集成了C/C++的编码规范,我们只要点击一个按钮,这些工具就会自动帮助我们检测代码中不符合语法规范的地方,非常方便。
动态测试(dynamic testing),指的是实际运行被测程序,输入相应的测试数据,检查实际输出结果和预期结果是否相符的过程,所以判断一个测试属于动态测试还是静态的,唯一的标准就是看是否运行程序。
我们还是以刚才的那段代码为例,实际运行修改后的程序,输入1.2 和3.5两个实数,按回车,得到结果3.500000,与我们预期的相符合。这是一个动态测试的过程。可能有的读者会问,以上过程不也是黑盒测试的过程马?黑盒白盒、动态静态,它们之间有什么关系呢?
它们只是测试的不同角度而已,同一个测试,既有可能是黑盒测试,也有可能是动态测试;既有可能是静态测试,也有可能是白盒测试。
黑盒测试有可能是动态测试(运行程序,看输入输出),也有可能是静态测试(部运行,只看界面)
白盒测试有可能是动态测试(运行程序并分析代码结构),也有可能是静态测试(不运行程序,只静态察看代码)
动态测试有可能是黑盒测试(运行,只看输入输出),也有可能是白盒测试 (运行并分析代码结构)
静态测试有可能是黑盒测试(不运行,只察看界面),也有可能是白盒测试(不运行,只察看代码)
测试分类:
按开发阶段分:单元测试、集成测试、系统测试、仿真平台、验收测试
按测试实施组织方分:开发方测试(验证测试或alpha测试)、第三方测试(独立测试)、用户测试(beta)
按测试方式分:动态测试、静态测试
按测试技术分:白盒测试、黑盒测试、灰盒测试
分享到:
相关推荐
利用机器学习方法(分类)实现静态场景下的测试车辆检测 利用C语言或者Open_CV库,或者是MATLAB软件编写实现静态场景下的测视车辆检测。需使用机器学习方法。代码可以通过一个主函数直接运行出实验结果。 Data...
"静态测试-代码审查" 代码审查是静态测试的一种重要方法,它通过对代码的检查和评估来发现和修复错误。代码审查的测试内容包括检查代码与设计的一致性、代码对标准的遵循、代码的逻辑表达的正确性、代码结构的合理...
1. 静态测试:静态测试不涉及程序的实际运行,而是通过检查源代码、界面设计和文档来寻找潜在的错误和不合规之处。这包括: - 代码测试:对照编程标准和规范,检查代码的结构、逻辑和风格。 - 界面测试:确保实际...
总的来说,白盒测试技术试验报告提供了对白盒测试理论与实践的全面理解,通过设计和执行测试用例,可以有效地验证程序的逻辑正确性和功能完整性。在实际软件开发过程中,白盒测试是保证代码质量和软件可靠性的重要...
测试策略分类是软件测试中的一种方法,它将测试策略分为静态测试、动态测试、黑盒测试、白盒测试、手工测试、自动测试、冒烟测试等多种类型。这些测试策略的选择取决于软件测试的目标、资源和时间限制。 一、静态...
标题中的“行业分类-设备装置-一种钢筋网静态力学性能测试装置及测试方法”表明了这个压缩包内容涉及的是建筑工程领域,特别是与钢筋网相关的机械设备和测试技术。描述中的信息与标题一致,再次强调了主题内容是关于...
接着,测试可以分为静态测试和动态测试。静态测试不运行软件,而是对源代码进行审查,包括代码检查和结构分析,以发现潜在问题。动态测试则涉及软件的实际运行,通过测试用例执行,包括功能测试、接口测试、性能分析...
《一种工业机器人关节减速器静态指标测试平台及测试方法》 在现代工业自动化领域,工业机器人扮演着至关重要的角色,而关节减速器是其核心组件之一。关节减速器的主要功能是将电机产生的高速旋转转化为低速大扭矩的...
测试的详细分类 黑盒和白盒测试 静态测试和动态测试 测试不同阶段 测试各种分类间关系
【软件测试技术基础及分类笔记】是对软件测试的初步学习和理解,涵盖了软件的基本概念、错误类型、测试定义、测试用例、测试人员素质、测试与质量保证的关系、软件测试的基本规则以及测试分类等多个方面。...
近段时间,学习了测试理论,我的总结如下,不全面: 测试的目的 对比分析测试出来的结果和软件需求说明是否一直... 动态测试,静态测试 按测试方法: 性能测试、功能测试、手工、自动化、回归、冒烟测试、验收测试
其次,软件测试还可根据是否执行被测试软件分为静态测试和动态测试。静态测试不执行程序,而是通过代码审查、文档检查等手段发现潜在问题,类似于汽车的静态检查。动态测试则是在运行时对软件进行测试,就像试驾汽车...
软件测试分类简介及测试举例 软件测试是复杂的系统工程,需要从不同的角度考虑,进行分类是为了更好地明确测试的过程,了解测试究竟要完成哪些工作,尽量做到全面测试。下面是软件测试的分类简介及测试举例: 1. ...
软件测试分类 软件测试是一种确保软件质量的方法,旨在发现软件中的错误、缺陷和不足,以提高软件的可靠性、稳定性和性能。软件测试可以分为不同的类型,包括黑盒测试、白盒测试、静态测试、动态测试、单元测试、...
5. **测试**:完成上述设置后,需要对论坛的分类信息页面进行测试,确保每个页面都能正常访问,且URL符合预期的伪静态格式。 6. **搜索引擎提交**:最后,可以向主要的搜索引擎提交新的Sitemap,帮助它们更快地索引...
FPGA测试技术涉及的内容广泛,包括对不同类型的FPGA进行分类,并针对每类FPGA的特定特点进行测试。FPGA主要可分为三大类:反熔丝型FPGA、Flash型FPGA以及基于静态随机存取存储器(SRAM)型FPGA。其中,SRAM型FPGA是...
首先,软件测试技术根据是否需要执行被测软件分为静态测试和动态测试。静态测试是一种不运行被测程序的测试方法,它包括代码检查、代码走查、桌面检查和同行评分等。这些方法通过对源代码进行分析来发现潜在的问题,...
为了理解静态库和动态库的创建及使用,可以通过编写简单的测试代码进行实践。准备测试代码`hello.h`、`hello.c`和`main.c`,其中`hello.h`为库的头文件,`hello.c`包含公用函数`hello()`,而`main.c`用于调用该函数...