- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第2章节软件测试基础
如果希望描述整个关系,则通常只写R?A?B。对于特定元素ai?A、bi?B,我们记做aiRbi 。 关系的表示 关系表示事物之间的某种联系,二元关系表示两个事物之间的关系,如果把这两个事物分别放在一边,如果某两个元素有关系,那么就在它们之间画一条有向线,用这种方式表示关系,称作关系图。 这里我们必须对“势”进行解释。势在用于集合时,是指集合中的元素的个数。 定义: 给定两个集合A和B,一个关系R?A?B,关系R的势是: 1)一对一势 当且仅当R是A到B的一对一函数 2)多对一势 3)一对多势 4)多对多势 单个集合上的关系 首先,我们对关系进行定义。设A是一个集合,R?A?A是定义在A上的一个关系,a, a、a, b、b, a、b, c、a, c?R。关系具有四个特殊属性: 定义: 关系R?A?A是: 1)自反的 2)对称的 ②如果命题A在任意的真值赋值函数下的真值都为0,则称A为矛盾式(contradiction); ③如果A不是矛盾式,则称为可满足式。 2.1.5概率论 概率是随机事件发生的可能性的数量指标。 在独立随机事件中,如果某一事件在全部事件中出现的频率,在更大的范围内比较明显的稳定在某一固定常数附近。就可以认为这个事件发生的概率为这个常数。对于任何事件的概率值一定介于 0和 1之间。 3、从执行的过程来看,测试是一个发现错误、改正错误、重新测试的过程;而调试是一个推理过程。 4、从准备工作来看,测试从已知的条件开始,使用预先定义的程序;调试一般是以不可知的内部条件开始,做统一性调试 。 5、从执行的计划性来看,测试是有计划的并要进行测试设计;而调试则不受时间约束。 6、从执行的人员来看,测试经常是由独立的测试组在不了解软件设计的条件下完成的,而调试必须由程序员来完成。 7、从所使用的工具来看,大多数白盒测试的执行和设计可有工具支持,而调试程序员能利用的工具主要是调试器。 2.2.2白盒测试的用例设计 白盒测试用例设计技术就是研究如何用最少的测试用例最大限度地发现软件中的错误,目前主要有基本路径测试、等价类划分/边界值分析测试、覆盖测试、循环测试、数据流测试、程序插桩测试、变异测试等等方法。下面主要对几种常见的方法加以介绍: 一、基本路径测试 先定义执行路径的基本集,从该基本集导出的测试用例保证对程序中的每一条语句至少执行一次。 设计时可能要用到流图或程序图。 流图:使用符号来描述逻辑控制流,每一种结构化构成元素有一个相应的流图符号。 环形复杂度:程序基本集的独立路径数量。 例子:P55页底下。 二、等价类划分/边界值分析(Equivalence partitioning/boundary value analysis) 等价类划分的目的就是为了在有限的测试资源的情况下,用少量有代表性的数据得到比较好的测试效果。 有有效等价类和无效等价类。有效等价类中的数据代表的是一组符合需求文档的正确的有意义数据。无效等价类则正相反。 如对于考试成绩的取值,有效等价类为[0,100],两个无效等价类为0和100。其中0和100是边界值。 三、控制流/覆盖测试(Control-flow/Coverage Testing) 控制流可以用流图(程序图)来表示。通常使用覆盖率指标来衡量测试用例的充分性。 ⑴ 方法覆盖 方法覆盖可用于衡量测试用例所覆盖的方法的百分比。 ⑵语句覆盖(Statement Coverage) 语句覆盖是一种衡量测试所覆盖的程序语句百分比的措施。通过测试应该达到100%程序语句覆盖的目标,可以标识圈数,然后执行最少的一组测试用例就可以达到语句覆盖的目标。 ⑶判断/分支覆盖 判断/分支覆盖是为了衡量在测试过程中覆盖了多少个程序中的布尔表达式。 (4) 条件覆盖条件覆盖要检查每个符合谓词的子表达式值为真和假两种情况。 可以使用如下方法设计循环测试用例: 一、简单循环: 二、嵌套循环: 三、串接循环: 四、无结构循环: 五、数据流测试: 六、程序插装:
原创力文档


文档评论(0)