软件测试技术·测试设计与开发

* 3.4 评审测试用例 复查测试用例时应该考虑的一些问题: 测试或测试组件完全针对的是需求中列出的功能吗? 测试组件是否覆盖了所有需求? 有冗余的测试吗? 每一个测试步骤都有清楚描述的预期结果吗? 测试用例是否考虑了有效和无效的输入情况? * 测试用例的优先级 定义测试用例优先级主要考虑:必须测试什么功能?如果一些功能没被测试会出现什么后果? 优先级1:这个测试必须执行 优先级2:如果时间允许,执行这个测试 优先级3:即使不执行这个测试,也不会导致大的质量问题 * * * * 3、条件覆盖 A>1 AND B=0 X:=X/A A=2 OR X>1 X:=X+1 a b c d e 使得判定中的每个条件获得各种可能的结果。 应满足以下覆盖情况: 判定一: A>1, A≤1, B=0, B≠0 判定二: A=2, A≠2, X>1, X≤1 选择用例: [(2,0,4),(2,0,3)] [(1,1,1),(1,1,1)] N N Y Y 2 A≤1 A≠2 0 B=0 4 X>1 1 A>1 A=2 1 B≠0 1 X≤1 注意:[(1,0,3),(1,0,4)] [(2,1,1),(2,1,2)] 满足条件覆盖,但不满足判断覆盖。 * 4、判定/条件覆盖 同时满足判断覆盖和条件覆盖。 A>1 AND B=0 X:=X/A A=2 OR X>1 X:=X+1 a b c d e 应满足以下覆盖情况: 条件: A>1, A≤1, B=0, B≠0 A=2, A≠2, X>1, X≤1 应执行路径 ace ∧ abd或: acd ∧ abe 选择用例: [(2,0,4),(2,0,3)](ace) [(1,1,1),(1,1,1)] (abd) Y Y N N * 5、条件组合覆盖 使得每个判定中条件的各种可能组合都至少出现一次。 A>1 X:=X/A A=2 X:=X+1 a b c d e B=0 X>1 Y N Y N Y N Y N 编译系统下的执行情况: 部分路径未被执行。 满足以下覆盖情况: ① A>1, B =0 ② A>1, B≠0 ③ A≤1, B =0 ④ A≤1, B≠0 ⑤ A=2, X>1 ⑥ A=2, X≤1 ⑦ A≠2, X>1 ⑧ A≠2, X≤1 选择用例: [(2,0,4),(2,0,3)] ① ⑤ [(2,1,1),(2,1,2)] ② ⑥ [(1,0,3),(1,0,4)] ③ ⑦ [(1,1,1),(1,1,1)] ④ ⑧ * 6、路径覆盖 覆盖程序中所有可能的路径 A>1 AND B=0 X:=X/A A=2 OR X>1 X:=X+1 a b c d e Y Y N N A B X 覆盖路径 2 0 3 1 0 1 2 1 1 3 0 1 a c e a b d a b e a c d 辅助模块设计 白盒测试和集成测试中,往往需要用到辅助模块 驱动模块 桩模块 单元测试的测试环境(P73) * * 等 价 分 类 法 边 值 分 析 法 错 误 推 测 法 因 果 图 法 3.3.7 黑盒测试用例设计 黑盒测试不考虑程序的内部结构与特性,只根据程序功能或程序的外部特性设计测试用例。 * 1、等价分类法 基本思想:根据程序的I/O特性,将程序的定义域划分为有限个等价区段 —“等价类”,从等价类中选择出的用例,具有“代表性”。 等价类分为: 有效等价类 — 对于程序的规格说明是合理的、有意义的输入数据构成的集合。 无效等价类 —对于程序的规格说明,是不合理的,是没有意义的输入数据构成的集合。 * 等价分类法步骤 应按照输入条件(如输入值的范围,值的个数,值的集合,输入条件必须如何)划分为有效等价类和无效等价类。 例如:每个学生可选修1-3门课程 可以划分一个有效等价类:选修1-3门课程。 可以划分两个无效等价类:未选修课,选修课超过3门。 又如:标识符的第一个字符必须是字母。 可以划分为一个有效等价类:第一个字符是字母。 可以划分一个无效等价类:第一个字符不是字母。 ① 划分“等价类”     显然,关键是 如何划分等价类 A、为每个等价类编号; B、使一个测试用例尽可能覆盖多个有效等价类 C、特别要注意的是:一个测试用例只能覆盖一个无效等价类。 ② 选择测试用例 等价分类法步骤 * 2、边值分析法 基本思想: 选择等价类的边缘值作为测试用例,让每个等价类的边界都得到测试,选择测试用例既考虑输入亦考虑输出。 分析步骤: A、先划分等

软件测试设计与开发,软件测试技术·测试设计与开发.ppt相关推荐

  1. php源码二次开发的技术,Thinkphp二次开发威客RW平台源码详细搭建教程(技术分享帖)-一颗优雅草科技yungui...

    Thinkphp二次开发威客RW平台源码详细搭建教程(技术分享帖)-一颗优雅草科技yungui原地址:这里不能发 应会员要求,本着互帮互助的原则,在这里出一套搭建教程. 首先 查看是否跟我的运行环境一 ...

  2. 软件测试之魂:核心测试设计精解

    软件测试之魂:核心测试设计精解(第2版)(掌握核心竞争力成为不可替代的测试精英) 肖利琼著 ISBN 978-7-121-19677-5 2013年5月出版 定价:59.00元 356页 16开 编辑 ...

  3. 软件测试之魂:核心测试设计精解(第2版)

    <软件测试之魂:核心测试设计精解(第2版)> 基本信息 作者: 肖利琼 出版社:电子工业出版社 ISBN:9787121196775 上架时间:2013-5-13 出版日期:2013 年5 ...

  4. 软件测试之魂:核心测试设计精解(第2版)》

    <软件测试之魂:核心测试设计精解(第2版)> 基本信息 作者: 肖利琼 出版社:电子工业出版社 ISBN:9787121196775 上架时间:2013-5-13 出版日期:2013 年5 ...

  5. 一个Web开发的客户端基础技术测试Demo

    最近参加了一个Web开发的客户端基础技术测试,虽然对于做前台开发的程序员来说比较简单,但对于一直做后台代码编写的程序员想掌握前台开发的基础来说,应该是一个比较好的Demo.对于Web初学者来说,也是一 ...

  6. modelsim(1):经常使用的测试设计的结构

    parameter CLK_CYC_20M = 50; initial begin     clk_20m     = 1'b0;         forever    #(CLK_CYC_20M / ...

  7. tipask二次开发总结_测试经验总结(“二次开发”)

    不知不觉已经工作五年时间了,从茁壮.康拓普.利鑫云端到现在的惠卡世纪,经历过机顶盒软件(嵌入式).企业管理软件(供电局管理系统).门户网站.互联网彩票.互联网金融.O2O.电商等各种不同业务.不同平台 ...

  8. 软件测试需要学什么(软件测试人员怎么入行)?

    先明确两个前提: 1.没有任何一本书,能做到软件测试从入门到精通,测试知识比开发更加庞杂,更需要聪明的学习! 2.刚入行就得学自动化测试开发技能,测试必须会代码,纯手工绝对不问代码的测试面试,没有了! ...

  9. 测试人员与开发人员的比例究竟多少是合理的?

    在一些软件大会上,人们常常会问这样一个问题:测试人员与开发人员的比例究竟多少是合理的?而这样的问题,很难直接给出一个答案.为什么会有这样的问题,可能来自于两方面的压力: 许多公司领导总是希望得到一个合 ...

最新文章

  1. linux系统判断是否重启、关机、查询登录诊断分析简介
  2. 真正优秀的人,都过着朴素的生活
  3. 如何制定客户留存策略_企业如何制定数字化转型策略?
  4. matlab中结构体的定义,matlab中怎么定义结构体啊 !!!
  5. 第八章:在Spark集群上掌握比较重要的图操作之Property Operators(2)
  6. 【Logstash】windows下logstash报错config files contains non-ascii characters but are not UTF-8 encoded
  7. java中的POJO、PO、VO分别是什么?
  8. java构造器构造方法_Java构造器(构造方法/constructor)
  9. 学生选课管理系统(上)
  10. 【车型识别】基于小波和盒维数实现车型识别含Matlab源码
  11. 金3银4面试前,把自己弄成卷王
  12. 简单编程(五)编程验证一下“角谷猜想”
  13. hive日期函数,求日期差等,datediff,date_add,date_sub,add_months
  14. 关于angular模态框遇到的坑 Error: [$injector:unpr] Unknown provider
  15. centos8 安装mysql8(二)
  16. 混合开发Android FlutterActivity 的透明状态栏
  17. 计算机大赛志愿者心得体会,志愿者的心得体会
  18. 你真的分清楚子序列和全排列了吗?【建议收藏】
  19. 1.Spring、Spring Boot 和 Spring Cloud 有什么关系?
  20. 百度、字节跳动们,能否撬动在线办公市场?

热门文章

  1. ASP.NET WebForm和Mvc开发的比较
  2. C# 中对象与JSON字符串相互转换的三种方法
  3. c++清空串口缓冲区
  4. 客户端的socket是否需要bind?
  5. C++(1) 指针 new 和delete
  6. 使用Banner实现轮播展示
  7. mysql 凭证_如何用mysql验证flask/python中的凭证?
  8. Android通过adb命令传参给APP的方法
  9. Error:Internal error: org.gradle.tooling.BuildException: Could not run build action using Gradle dis
  10. build settings参数详解