2011年计算机二级公共基础知识辅导讲义第三章(4)计算机二级考试
文章作者 100test 发表时间 2011:02:28 18:59:13
来源 100Test.Com百考试题网
导读:软件测试是指使用人工或自动手段来运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别。点击查看更多此系列辅导讲义汇总>>>
3.4 软件测试
1、软件测试定义:使用人工或自动手段来运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别。
*:软件测试的目的:尽可能地多发现程序中的错误,不能也不可能证明程序没有错误。软件测试的关键是设计测试用例(注释1),一个好的测试用例能找到迄今为止尚未发现的错误。
2、软件测试方法:静态测试和动态测试。
静态测试:包括代码检查、静态结构分析、代码质量度量。不实际运行软件,主要通过人工进行。
动态测试:是基于计算机的测试,主要包括白盒测试方法和黑盒测试方法。
(1)白盒测试
白盒测试方法也称为结构测试或逻辑驱动测试。它是根据软件产品的内部工作过程,检查内部成分,以确认每种内部操作符合设计规格要求。
白盒测试的基本原则:保证所测模块中每一独立路径至少执行一次;保证所测模块所有判断的每一分支至少执行一次;保证所测模块每一循环都在边界条件和一般条件下至少各执行一次;验证所有内部数据结构的有效性。
*:白盒测试法的测试用例是根据程序的内部逻辑来设计的,主要用软件的单元测试,主要方法有逻辑覆盖、基本路径测试等。
A、逻辑覆盖。逻辑覆盖泛指一系列以程序内部的逻辑结构为基础的测试用例设计技术。通常程序中的逻辑表示有判断、分支、条件等几种表示方法。
语句覆盖:选择足够的测试用例,使得程序中每一个语句至少都能被执行一次。
路径覆盖:执行足够的测试用例,使程序中所有的可能的路径都至少经历一次。
判定覆盖:使设计的测试用例保证程序中每个判断的每个取值分支(T或F)至少经历一次。
条件覆盖:设计的测试用例保证程序中每个判断的每个条件的可能取值至少执行一次。
判断-条件覆盖:设计足够的测试用例,使判断中每个条件的所有可能取值至少执行一次,同时每个判断的所有可能取值分支至少执行一次。
*:逻辑覆盖的强度依次是:语句覆盖