- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
7.1.2 软件质量的特征 1 很难制定具体的、数量化的产品质量标准 没有相应的国际标准、国家标准或行业标淮 7.1.2 软件质量的特征 1 ISO质量特性国际标准 ISO/IEC9126 功能性Functionality 可靠性Reliability 可用性Usability 效率 Efficiency 可维护性Maintainability 可移植性Portability 1 ISO质量特性国际标准 ISO/IEC9126 1 软件质量应贯穿软件开发的全过程软件质量管理该贯穿软件开发的全过程, 而不仅仅是软件本身。 3 运用技术手段保证质量 使用多种软件工具,保证软件质量。例如: ? 用Rational Rose软件进行软件开发等。 采用先进的系统分析方法和软件设计方法 错误Error称bug 不正确结果的全部。 由开发人员引起的,如输入错误、需求错误、 设计错误等。 “千年虫” 1970年代,一位程序员在开发公司的工资管理系 统时,迫于计算机存储空间的限制,将4位数日 期缩减为2位数1973?73,从而节省了可观的 存储空间; 然而,世界各地更换或升级2000年问题所花的费用超过数亿美元… “爱国者导弹” 爱国者导弹 vs 飞毛腿导弹 有一枚爱国者导弹击毙28名 美军士兵… 原因:导弹的软件包含一个累加计时故障,系统时钟错误积累起来就可能拖延14个小时,造成跟踪系统失去准确度。 “狮子王” 1994年秋天,迪斯尼公司发 行《Lion King Animated》, 虽然销售量巨大,却引来巨 大的、意想不到的投诉… 例2:日期检查档案管理系统,要求用户输入以年月表示的 日期。假设日期限定在1990年1月--2049年12月, 并规定日期由6位数字字符组成,前4位表示年, 后2位表示月。 [问题] 用等价类划分法设计测试用例,来测试程 序的“日期检查功能”。 划分等价类: 例2:日期检查 设计有效等价类的测试用例: 例2:日期检查 设计无效等价类的测试用例: 确定边界 常见的边界值 通常情况下,软件测试所包含的边界检验有几种 类型:数字、字符、位置、重量、大小、速度、 方位、尺寸、空间等。 边界值分析的原则 原则1:如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚刚超越这个范围边界的值作为测试输入数据。 原则2:如果输入条件规定了值的个数,则用最大个数、最小个数、比最小个数少1,比最大个数多1的数据作为测试数据。 原则4:将原则1和原则2应用于输出条件,即设计测试用例使输出值达到边界值及其左右的值。 [例1] NextDate 1≤day≤31 [例1] NextDate 另一种更详尽的划分方法 D1 1≤date<last day of the month D2 last day of the month D3 Dec. 31 M1 30-day months M2 31-day months M3 Feb. Y1 2000 Y2 leap year Y3 not leap year 自动售货机 转换成判定表: 功能测试只能观察软件的外部表现,满足用户 的功能需求。 对一个具有多重选择和循环嵌套的程序,不同的路径数目可能是天文数字。 例:某个小程序的流程图,包括了一个执行20次的循环。 包含的不同执行路径数达520条,对每一条路径 进行测试需要1 毫秒,假定一年工作365 ×24 小时,要把所有路径测试完,需3170年。 逻辑覆盖: 语句覆盖 判定覆盖分支覆盖 条件覆盖 判定/条件覆盖 条件组合覆盖 控制结构覆盖: 基本路径测试 循环测试 条件测试 数据流测试 1 语句覆盖Statement Coverage 被测程序中的每条语句至少应该执行一次 语句覆盖是最弱的测试标准。 例1: 语句覆盖的缺点 语句覆盖是最弱逻辑覆盖 如果第一个条件语句中的“”错误的写成“||”, 上面的测试用例无法发现这个错误; 语句覆盖的例2 2 判定分支覆盖 执行足够的测试用例,使得程序中的每一个分支至少都通过一次。 测试用例: A3, B0, X1沿路径acd执行?? A2, B1, X3沿路径abe执行 判定分支覆盖 测试用例: 3 条件覆盖 一个判定中往往包含了若干个条件; 例如:判定 A>1 AND B0包含了两个条件: A>1以及 B0 “条件覆盖”,执行足够的测试用例,使得判定中的每个条件获得各种可能的结果。 条件覆盖 例中 的程序有四个条件:A>1、 B0、A2、X>1 条件覆盖 对例中的所有条件取值加以标记。 对于
文档评论(0)