软件测试的方法

236 阅读4分钟

白盒测试和黑盒测试


黑盒测试:也称功能测试或数据驱动测试,在完全不考虑内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当的接收输入数据而产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性。 黑盒测试方法:等价类划分法;边界值分析法;因果图法;场景法;正交实验设计法;判定表驱动分析法;错误推测法;功能图分析法。 白盒测试:也称为结构测试或逻辑驱动测试,白盒测试法检查程序内部逻辑结构,对所有的逻辑路径进行测试,是一种穷举路径的测试方法。 白盒测试原则: (1)保证一个模块中的所有独立路径至少被测试一次; (2)所有逻辑值均需要测试真(true)和假(false)两种情况; (3)检查程序的内部数据结构,保证其结构的有效性; (4)在上下边界及可操作范围内运行所有循环。 白盒测试方法: 语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖 灰盒测试: 大概知道代码逻辑实现,不需要看懂所有的代码

静态测试:不用运行程序的测试,包括代码检查、静态结构分析、代码质量度量、文档测试等等,它可以由人工进行,充分发挥人的逻辑思维优势,也可以借助软件工具(Fxcop)自动进行。 动态测试:需要执行代码,通过运行程序找到问题,包括功能确认与接口测试、覆盖率分析、性能分析、内存分析等。

(3)按不同的测试手段划分:手工测试、自动化测试 手工测试 。点工 自动化测试 。工具+代码 (4) 按测试包含内容划分:功能测试、界面测试、安全测试、兼容性测试、易用性测试、性能测试 。功能测试 。测试软件的功能是否符合需求,通常采用黑盒测试方法,一般由测试人员独立执行。 。界面测试 。也称UI测试,测试用户界面布局是否合理,整体风格是否一致,界面文字是否正确,命名是否统一,页面是否美观,文字,图片组合是否完美等。 。安全性测试 。验证应用程序的安全等级和识别潜在安全缺陷的过程。目的是为了查找软件自身程序设计中存在的安全隐患,并检查应用程序对非法侵入的防范能力(登录、防攻击) 。兼容性测试 。兼容性测试是指检查被测软件在不同的硬件平台上、不同的应用软件之间、不同的操作系统中、不同的网络环境中是否可以正常运行的一种测试。 。易用性测试 。这种测试方法,不是去测试软件能不能用,而是去测试软件好不好用,用户学习成本高,所以主观性比较强烈。一般要根据多个用户的测试反馈信息,才能评价易用性到底好不好。(人性化、 舒适、是否符合用户使用习惯、比较主观) 。性能测试 。一般性能测试:相应速度,对资源(CPU/内存)的利用 。压力测试:高负载的情况下进行的,目的不是为了获取性能指标,而是想要了解系统是否稳定。 。负载测试:通过不断调试并发数获取性能瓶颈(极限) 。强度测试:为了确定系统在最差工作环境的工作能力,或用于验证在标准工作压力下的各种资源的最下限指标。 。单元测试 。完成最小的软件设计单元(模块、类、函数、方法)的验证工作,目标是确保模块被正确的编码,使用过程设计描述作为指南,对重要的控制路径进行测试以发现模块内的 判定表分析法 。定义 。判定表也称决策表,他能够将复杂的问题按照各种可能