还剩21页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
软件质量保证与测试课程教学大纲
一、课程教学目标软件质量保证与测试课程是软件工程专业的一门专业课通过本课程的学习,使学生掌握软件测试的基本概念、基本理论以及软件测试生命周期的内涵,深刻理解和运用软件测试过程的基本方法和基本技术;培养学生能够熟练编写测试计戈I」、测试用例和测试报告,熟悉相关的自动化测试工具,了解各种新的软件测试技术和主要发展方向,了解软件质量工程的活动框架,理解软件质量标准体系和软件质量保证常用技术;基于项目背景和用户需求,能够完成测试任务的分析、设计和执行;能够具备软件测试岗位必备的职业能力,为学生将来从事软件测试工作和进一步深入研究打下坚实的理论基础和实践基础
1.认知目标1了解软件测试在软件生命周期和软件质量管理中的地位、作用,了解企业测试的实施策略和实施过程;2理解软件测试中常用的术语及概念;3掌握软件测试的不同阶段和技术方法;4了解软件质量工程的活动框架,理解软件质量标准体系
2.技能目标1能够根据测试对象的需求规格、测试的目的要求,独立分析问题,设计测试方案,选择合适的测试方法;2能够独立设计测试用例,参与或管理软件测试的各个过程,并对测试结果进行有效的分析,撰写测试报告;3具备软件测试岗位必备的职业能力,为学生获取软件测试工程师职业资格证书奠定基础
3.情感目标1启迪思维,培养学生树立软件测试和质量保证的观念,掌握规范化的测试流程;2培养学生良好的软件开发素质、高度的责任心和良好的团队合作精神
二、课程教学内容及要求
1.通过学习,旨在使学生掌握软件测试的基本概念和原理,理解软件测试的必要性和重要性;掌握功能性测试黑盒测试各方法,包括边界值测试、等价类测试、基于决策表的测试和错误推测法测试;掌握结构性测试白盒测试中的逻辑覆盖测试和基本路径测试,了解对循环的测试;掌握软件测试的第三节单个集成测试用例的设计
一、成对集成
二、案例第二日问题的成对集成
三、邻居集成
四、案例第二日问题的邻居集成
五、基于独立路径的集成
六、案例第二日问题基于独立路径的集成第四节集成测试遍历顺序的设计
一、大爆炸集成
二、自顶向下集成
三、自底向上集成
四、三明治集成第五节集成测试策略的比较【课后作业】
2.集成测试与单元测试有何区别?
3.采用自顶向下深度优先策略方法完成对计算器程序的集成测试【阅读书目】Robert C.Martin著,余晟译.代码整洁之道程序员的职业素养[M].北京:人民邮电出版社,
2016.第六章系统测试【教学目标】通过本章教学,使学生理解系统测试的概念;掌握功能测试的模式与方法;理解性能测试、安全性测试、用户界面测试的执行【重点难点】重点系统测试的类型及其特点;系统测试与单元测试、集成测试的区别;功能测试难点系统测试的性能测试【教学内容】第一节系统测试概述第二节功能测试、以数据为中心的系统
二、以活动序列为中心的系统第三节性能测试第四节安全性测试第五节用户界面测试【课后作业】
1.系统测试与单元测试、集成测试的主要区别
2.对QQ登录模块进行功能测试提示根据登录操作的特点,可以采用等价类和边界值方法设计测试用例【阅读书目】Harry J.W.Percival著,安道译.Python Web开发测试驱动方法[M].北京人民邮电出版社,
2015.第七章软件测试过程管理【教学目标】通过本章教学,使学生掌握软件测试过程的V模型和W模型;掌握测试用例报告、软件缺陷报告的撰写;了解测试组织策划和组织管理【重点难点】重点软件测试过程的V模型和W模型;测试用例报告的撰写难点软件缺陷的跟踪和管理【教学内容】第一节软件测试过程模型
一、V模型
二、W模型
三、H模型
四、X模型第二节测试用例的管理
一、测试用例报告的撰写
二、测试用例的组织和跟踪第三节软件缺陷的管理
一、软件缺陷的属性
二、软件缺陷报告的撰写
三、缺陷的跟踪和管理第四节测试团队的管理
一、测试团队的责任
二、测试团队的组织架构
三、测试团队各角色职责【课后作业】
1.简述软件缺陷的表现形式和产生原因
2.简述什么情况下可能中断软件测试第八章软件质量工程【教学目标】通过本章教学,使学生了解软件质量评价体系与标准,掌握软件质量及其度量要素,了解软件过程度量和软件产品度量【重点难点】重点软件质量的概念,软件质量要素难点软件质量三层次度量模型【教学内容】第一节软件质量工程体系
一、软件质量
二、软件质量评价体系与标准
三、软件质量控制的基本方法
四、软件质量保证体系第二节软件质量度量
一、软件质量要素
二、软件质量保证模型
三、缺陷排除效率
四、软件过程度量
五、软件产品度量【课后作业】
1.某公司生产出一个新型的纸杯,现由你对纸杯进行测试,以保证纸杯的质量和口碑,请根据软件质量要素简述测试方法和目的
2.软件设计的质量对最终软件产品和软件开发过程会产生哪些影响?【阅读书目】William E.Lewis著,陈绍英译.软件测试与持续质量改进(第3版)[M].北京人民邮电出版社,
2011.软件质量保证与测试实验教学大纲课程名称软件质量保证与测试课程代码课程性质非独立设课课程类别专业课程实验教材或指导书类型自编(非出版)课程总学时48学分
2.5实验学时16实验学分
0.5适用专业软件工程实验室名称根据课表分配先修课程程序设计语言(含面向对象)、数据结构、软件工程、数据库原理等
一、课程简介本课程是结合理论课程《软件质量保证与测试》安排的实践课程,以综合性实验为主,其中既要求学生通过使用测试工具,编写测试代码来验证测试理论和测试方法;又要求学生能够根据测试对象的特点、测试的目的要求,独立分析问题,设计测试方案,编写测试用例,执行测试程序,撰写测试报告,掌握规范化的测试流程
二、实验教学任务和目的通过本课程的实践练习,目的在于将测试理论、测试方法、测试技术应用到实践中去,使学生树立软件测试和质量保证的观念,掌握规范化的测试流程,培养学生能够独立设计测试用例,参与或管理软件测试的各个过程,并对测试结果进行有效的分析,具备软件测试岗位必备的职业能力,为学生获取软件测试工程师职业资格证书奠定基础
三、主要仪器设备硬件电子计算机软件:Microsoft Window7操作系统、Visual Studio2010jdkl.
6、Eclipse、QTP等软件工具
四、实验方式与基本要求实验课程侧重于培养学生能够熟练应用各种软件测试方法完成设计实验的能力实验课程中验证性、综合性、设计性的实验比例约为1:4:3,开设实验方式是每个学生一台计算机,在规定时间内独立完成实验内容,指导教师1人实验前,要求学生一定要先了解实验目的、内容、要求以及注意事项,熟悉测试对象,设计测试方案;实验过程中,学生应编写测试用例和代码,运行测试程序,记录测试结果,遇到疑难问题,学生要善于独立分析,力争自己解决;实验结束后,学生要详细完成实验报告
五、实验课时安排具体实验和课时安排见下表实验安排表每组开设要序号实验名称实验类型学时实验者类别人数求实验一验证性本科生必做21测试软件NextDate边界值分析法及测试实验二综合性本科生必做21用例设计等价类测试法及测试实验三综合性本科生必做21用例设计对判定的测试及测试实验四综合性本科生必做21用例设计基本路径测试法及测实验五综合性本科生必做21试用例设计实验六单元测试设计性本科生必做21实验七综合设计设计性本科生必做44-6学时总计16学时
六、实验教学内容实验一实验目的
1.理解软件测试的基本概念、原理,初步了解软件测试的方法,熟悉软件测试的流程步骤
2.理解测试用例的定义及组成部分
3.通过实验,能够找到NextDate软件的缺陷实验原理
1.软件测试是使用人工和自动手段来运行或测试某个系统的过程,目的在于检验其是否满足规定的需要或是弄清楚预期结果与实际结果之间的差别
2.软件测试的过程主要分为5个主要的步骤即计划测试、设计测试、实施测试、执行测试和评估测试
3.测试用例是由输入数据、操作步骤、预期执行结果及测试环境所构成
4.对于某个测试对象,其输入数据大致可以分为3类正常数据、错误数据和边界数据实验注意事项
1.在自动测试执行过程中将覆盖原始测试数据文件,因此,在执行之前,要对原始测试数据文件进行备份
2.正确安装和配置案例代码实验内容
1.测试NextDateVl版本1在Microsoft Visual Studio2010环境下安装教材所提供的
1.3节NextDateVl版本中的案例代码2执行教材中表
1.2中的测试用例3记录测试结果,并对测试结果进行总结分析,报告发现的问题
2.测试NextDateV2版本1在Microsoft Visual Studio2010环境下安装教材所提供的
1.5节NextDateV2版本中的案例代码2执行测试用例文件“原始测试数据一一正确的.xls”
(3)记录测试结果,并对测试结果进行总结分析,报告发现的问题
3.撰写实验报告实验仪器计算机、Microsoft Window7操作系统、Visual Studio2010实验二实验目的L理解黑盒测试的基本概念、原理,掌握黑盒测试的基本技术和方法
4.能够熟练应用边界值分析法设计测试用例,并实施测试、分析测试结果
5.通过简单程序的黑盒测试,熟悉测试过程,养成良好的测试习惯,并逐步提高运用黑盒测试技术解决实际测试问题的能力实验原理
1.黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使用
2.在测试时,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性
3.边界值测试的基本原理是在被测对象的边界及边界附近设计测试用例实验注意事项
1.如果输入日期是1月的第一天,则day变量的值置为31,month变量的值置为12,year变量的值减
12.关于最后一天的判断实验内容
1.对PrevDate函数(计算当前输入日期的前一天)运用边界值分析法设计测试用例其中,PrevDate函数的功能描述为前一日函数PrevDate是NextDate的逆函数,PrevDate函数为了获得当前输入日期的前一个日期,有效处理范围为1900年到2050年之间的某个日期
2.根据设计的用例集执行测试,记录测试结果,并对测试结果进行总结分析,报告发现的问题
3.撰写实验报告实验仪器计算机、Microsoft Window7操作系统、Visual Studio2010实验三实验目的
1.理解黑盒测试的基本概念、原理,掌握黑盒测试的基本技术和方法
2.能够熟练应用等价类分析法设计测试用例,并实施测试、分析测试结果
3.通过简单程序的黑盒测试,熟悉测试过程,养成良好的测试习惯,并逐步提高运用黑盒测试技术解决实际测试问题的能力实验原理
1.等价类测试方法的基本原理通过等价划分的方式来将数据分片,从每个分片中抽取典型数据展开测试等价类划分法是把所有可能的输入数据,即程序的输入域划分为若干部分子集,然后从每一个子集中选取少数具有代表性的数据作为测试用例
2.有效等价类合理、有意义的输入数据构成的集合,即被测对象能接受的数据用于考查软件的正常工作能力
3.无效等价类不合理、无意义的输入数据构成的集合,即被测对象不能接受的数据用于考查软件的容错能力实验注意事项工资的计算规则中,隐含了雇员的月工作小时的最大值实验内容工资问题从标准输入读入某雇员的工作时间以小时计和每小时的工资数,计算并输出他的工资工资的计算规则是1若该工资的计算规则超过40小时,则超过部分按原工资的
1.5倍加班工资计算;2若该雇员的月工作小时超过50小时,则超过50的部分按原工资的3倍加班工资计算,而40到50小时的工资参照条件1;3雇员的每小时工资不超过1000元
1.按照等价类划分的思想,针对以上工资问题,设计等价类测试用例
2.使用设计的测试用例,针对工资问题的程序进行测试,记录测试结果,并对测试结果进行总结分析,报告发现的问题
3.撰写实验报告实验仪器计算机、Microsoft Window7操作系统、Visual Studio2010实验四实验目的L理解白盒测试的基本概念、原理,掌握白盒测试的基本技术和方法
4.能够熟练使用语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖等方法设计测试用例,并实施测试、分析测试结果
5.通过实验和应用,逐步提高运用白盒测试技术解决实际测试问题的能力实验原理
1.白盒测试原理分析程序的内部逻辑结构,选择适当的覆盖标准,设计测试用例,对主要路径进行尽可能多的测试白盒测试测试用例一般采用逻辑覆盖法进行设计
2.语句覆盖选择足够的测试用例,使得程序中每个语句至少都能被执行一次
3.判定覆盖执行足够的测试用例,使得程序中每个判定至少都获得一次“真”值和“假”值
4.条件覆盖执行足够的测试用例,使得所有判定中的每个条件至少都获得一次“真”值和“假”值
5.判定/条件覆盖执行足够的测试用例,使得判定中每个条件取到各种可能的值,并使每个判定取到各种可能的结果
6.条件组合覆盖执行足够的例子,使得每个判定中条件的各种可能组合都至少出现一次实验注意事项白盒测试与程序内部结构相关,是基于代码的基础上,因此测试者需要了解程序结构的实现细节等知识,才能有效进行测试用例的设计工作实验内容用逻辑覆盖测试方法测试以下程序段:void Test1intx,inty,intz{1intk=0,j=0;2ifx3z103{4k=x*y-l;5j=sqrtk;//sqrt函数用来计算一个非负数的平方根6}7ifx==4||y58j=x*y+10;9j=j%3;10return kJ;11说明程序段中每行开头的数字1-11是对每条语句的编号
1.大家用自己熟悉的编程语言,编写能够实现上面问题描述的程序
2.分别用语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖等方法设计测试用例,并写出每个测试用例的执行路径用题中给出的语句编号标
3.使用设计的测试用例,针对上述问题的程序进行测试,记录测试结果,并对测试结果进行总结分析,报告发现的问题
4.撰写实验报告,要求给出完整的测试信息,如测试程序、测试用例、测试《土里笺实验仪器计算机、Microsoft Window7操作系统、Visual Studio2010实验五实验目的L理解白盒测试的基本概念、原理,掌握白盒测试的基本技术和方法
5.能够熟练使用基本路径测试方法设计测试用例和执行测试的过程层次,其中包括单元测试、集成测试、系统测试;了解软件测试的过程管理,掌握测试用例的编写方法,并能编写测试方案和测试报告;了解软件质量工程体系及其代表性的模型或理论,建立正确的质量文化和理念,掌握软件开发和维护过程中的质量保证措施和管理方法
6.注重培养学生理论应用于实践的能力,课堂上侧重向学生讲述软件测试的基本概念和原理,通过实验教学训练,培养学生软件测试的职业能力和职业素养,帮助学生掌握多种测试方法,了解软件测试流程;学生能够基本承担起软件测试的工作任务,具备软件测试岗位必备的职业能力,能够胜任软件测试工程师的岗位要求,为将来从事软件开发、测试或管理等工作打下良好的基础
7.课堂讲授实行启发式,结合例子引导学生学习,力求做到少而精,突出重点,并注意将培养和提高学生的分析问题、解决问题和规范工作的能力放在重要位置
8.坚持课后练习是教好、学好本门课程的关键在整个教学过程中,将根据正常教学进度布置一定量的课后作业和上机作业,要求学生按时完成同时,充分利用网络教学平台和测试网站资源,提供更多的课外学习资料与习题,拓展学生的学习空间
三、课程教学重点和难点重点本课程的有关基本理论和基本概念,包括功能性测试(黑盒测试)各种方法,结构性测试(白盒测试)各种方法,以及软件测试的过程步骤单元测试、集成测试、系统测试难点边界值测试、等价类测试、逻辑覆盖测试、基本路径测试
四、课程考核形式和要求根据本专业人才培养方案和课程性质,课程考核采用纸质闭卷考试形式课程考试成绩由“平时成绩”(占30%)和“期末成绩”(占70%)构成其中,平时成绩是以学生平时出勤、课堂表现、撰引实验报告和课后作、也完成情况等方面予以评分;“闭卷”主要通过选择题、判断题、填空题、简答题、论述题、应用题等题型考查软件质量保证与测试的基本概念、基本理论和基本知识,测评学生的理解、判断、分析、综合运用等能力
五、课程教学时数分配
3.通过实验和应用,逐步提高运用白盒测试技术解决实际测试问题的能力实验原理
1.基本路径测试方法是在程序控制流图的基础上,通过分析控制结构的环形复杂度,导出基本可执行路径的集合,从而设计测试用例的方法
2.基本路径测试法设计测试用例的主要步骤如下1以详细设计或源代码作为基础,导出程序的控制流图2计算得到的控制流图G的环路复杂性V Go3确定线性无关的路径的基本集4生成测试用例,确保基本路径集中每条路径的执行实验注意事项
1.环路复杂性V G的计算
2.确定线性无关的路径的基本集实验内容折半查找代码的功能是用折半查找法在元素呈升序排列的数组中查找值为key的元素的下标public intbinSearch int array[],int key{1int mid,low,high;2low=0;3high=array.length-1;4while low=high{5mid=low+high/2;6if key==array[mid]7return mid;8else ifkeyarray[mid]9high=mid-1;10else11low=mid+1;12}13return-1;14说明程序段中每行开头的数字(1-14)是对每条语句的编号
1.画出如上程序段的控制流图
2.计算此程序段的环路复杂性
3.用基本路径覆盖法给出测试路径
4.为各测试路径设计测试用例
5.使用设计的测试用例,针对上述问题的程序进行测试,记录测试结果,并对测试结果进行总结分析,报告发现的问题
6.撰写实验报告,要求给出完整的测试信息,如测试程序、测试用例、测试实验仪器计算机、Microsoft Window7操作系统、VisualStudio2010实验六实验目的
1.理解单元测试的基本方法和基本原理
2.能够按照单元测试的要求设计测试用例,并分析用例的执行结果实验原理
1.单元测试是在软件开发过程中要进行的最低级别的测试活动,或者说是针对软件设计的最小单位一一程序模块,进行正确性检验的测试工作
2.单元本身不是一个独立的程序,一个完整的可运行的软件系统并没有构成,所以必须为每个单元测试开发驱动模块和桩模块
3.驱动模块(Driver)所测模块的主程序,它接收测试数据,并把数据传送给所测试模块,最后再输出实测结果即驱动模块的使命就是根据测试用例的设计去调用被测试模块,并且判断被测试模块的返回值是否与测试用例的预期结果相符
4.桩模块(Stub)用来代替所测模块调用的子模块实验注意事项驱动模块和桩模块的构造实验内容完成对下面Calculator类的单元测试Calculator类能够实现两个整数的加、减、乘、除运算class Calculatorprivate inta,b;public voidmakeSampleCalintx,inty{a=x;b=y;public intadd{return a+b;public intsub{return a-b;public intmul{return a*b;public intdiv{return a/b;
1.为Calculator类构造驱动程序,完成对makeSampleCal0addsub、mul、div函数的调用
2.根据白盒测试技术主要考虑路径测试测试技术和黑盒测试技术等价类划分和边界值设计测试用例,并给出测试结果
3.根据测试结果,指出Calculator类中存在的缺陷及修改方法
4.撰写实验报告实验仪器计算机、Microsoft Window7操作系统、jdkl.
6、Eclipse实验七实验目的本课程设计是学生学习完《软件质量保证与测试》课程后,进行的一次全面的综合训练,实现对选定案例软件的完整测试过程通过软件测试的实践训练,深刻理解和掌握软件测试和软件测试过程的基本方法和基本技术,熟练掌握黑盒测试、白盒测试的测试用例的设计,对自动化测试有深刻理解,同时进一步提高学生对于复杂程序的编写能力,为学生将来从事实际软件测试工作和进一步深入研究打下坚实的理论基础和实践基础实验原理严格按照软件测试的流程进行实施,从测试需求分析,测试计划,测试设计,测试执行,测试报告,总结等几个环节进行工作安排和分配,共同完成案例软件系统的测试实验注意事项原则上4-6人一组,形成项目团队,各学生有明确的分工,并能够在工作过程中全力配合协作,培养良好的互相帮助和团队协作精神实验内容
1.学生根据实训实现的系统进行课程设计;也可以自行搜索,从而确定一个有源代码的Web或Windows的应用程序进行课程设计
2.先执行代码的静态分析和评审,得出初步测试结果
3.白盒测试设计白盒测试的测试用例在设计测试用例过程中,要分别采用逻辑覆盖测试、基本路径覆盖测试、数据流测试和循环测试为程序设计相应的测试用例,其中对于逻辑覆盖测试的用例设计,可以采用语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖等方法
4.黑盒测试在设计测试用例过程中,可以采用等价类划分法、边界值分析法、场景法进行黑盒测试
5.用户界面测试对测试用例进行用户界面的评审
6.完成课程设计报告实验仪器计算机、Microsoft Window7操作系统、VisualStudio
2010、jdkl.
6、Eclipse
七、实验考核方式与成绩评定实验成绩为百分制由实验考勤分数和实验报告分数两部分组成其中,实验考勤占30%,实验报告占70%o
1.实验考勤每次考勤分出勤(记100分);请假、迟到、早退(记60分);旷课记分(记0分)
2.实验报告要求写明实验目的、实验设备名称和型号、实验步骤、实验数据记录及结果处理、实验分析及注意事项分优秀(90-100分)、良好(80-89分)、中等(70-79分)、及格(60-69分)和不及格(59分及以下)记分
八、实验教材和参考资源
1.秦航.软件质量保证与测试(第2版)M.北京清华大学出版社,
2017.
08.
2.武剑洁.软件测试实用教程一方法与实践(第2版)[M].北京电子工业出版社,
2012.
11.
3.周元哲.软件测试习题解析与实验指导[M].北京清华大学出版社,
2017.
10.
4.王智钢,曾岳.软件测试技术实验指导与习题[M].南京南京大学出版社,
2013.
12.
5.贺平.软件测试教程(第3版)[M].北京电子工业出版社,
2014.
08.
6.马海云.软件质量保证与软件测试技术[M].北京国防工业出版社,
2011.
06.
7.http://www.testtao.com/portal,php,软件测试网一测试之道.
8.http://www.51testing.com/html/,51Testing软件测试网.
九、说明本大纲依据高等工科院校四年制本科软件工程专业的培养目标和学校2018版人才培养方案中的培养要求而制定通过实验课程的教学训练,旨在使学生掌握软件测试的基本概念和原理,熟练运用黑盒测试和白盒测试方法对给定系统进行测试,培养学生软件测试的职业能力和职业素养,为学生将来从事软件开发、测试或管理等工作打下良好的基础章目教学内容教学时数教学方式或手段课后作业形式备注软件测试的基本概念在线测试题思考第一章讲授(多媒体)、讨论2题第二章黑盒测试技术讲授(多媒体)、讨论分析设计题8讲授(多媒体)、讨论第三章白盒测试技术答疑分析设计题10第四章单元测试讲授(多媒体)、答疑分析设计题2第五章集成测试分析设计题4讲授(多媒体)第六章系统测试分析设计题2讲授(多媒体)第七章软件测试过程管理讲授(多媒体)、讨论在线测试题2在线测试题思考第八章软件质量工程讲授(多媒体)、讨论2题实验一测试软件讲授、实验实验报告NextDate2边界值分析法及测试用例设计实验二讲授、实验实验报告2等价类测试法及测试用例设计实验三讲授、实验实验报告2对判定的测试及测试用例设计实验四讲授、实验实验报告2基本路径测试法及测试用例设计实验五讲授、实验实验报告2实验六单元测试讲授、实验实验报告2实验七综合设计讲授、实验实验报告4总计48第一章软件测试的基本概念【教学目标】通过本章教学,使学生掌握软件的定义,了解软件的特点;掌握软件测试的定义、软件测试的主要步骤,理解软件测试的过程;掌握软件缺陷的概念;掌握测试用例的定义及测试用例的基本组成;了解自动化测试的定义及实施要点【重点难点】重点软件、软件测试、软件缺陷、测试用例、自动化测试的概念难点测试用例的基本组成【教学内容】第一节软件测试的概念
一、软件的定义及特点
二、软件测试的定义
三、软件测试的主要步骤第二节软件缺陷的概念
一、软件缺陷的定义及案例实践
二、软件缺陷的来源及代价第三节测试用例的概念
一、测试用例的定义
二、测试用例的基本组成第四节自动化测试
一、自动化测试的定义
二、自动化测试的任务
三、自动化测试的技术【课后作业】
1.为什么说软件的需求规格说明书往往是软件缺陷的最大来源?对软件测试工作有何启发?
2.分析国内软件测试从业人员的现状,如何才能做一个合格的软件测试工程师?【阅读网络资源】
1.软件测试网一测试之道.http:〃www.testtao.com/portal,php.
2.51Testing软件测试网.http:〃www.51testing.com/html/第二章黑盒测试技术【教学目标】通过本章教学,使学生理解黑盒测试的基本概念与基本方法;掌握黑盒测试的边界值分析法、等价类划分法;理解黑盒测试的判定表法、正交表法和场景法;能够运用等价类划分法、边界值分析法进行实际程序测试【重点难点】重点运用边界值测试、等价类测试方法进行测试用例的设计难点黑盒测试各个方法的优点、不足及适用范围【教学内容】第一节黑盒测试概述
一、黑盒测试的基本原理和特点
二、黑盒测试的使用阶段
三、测试方法的评价第二节边界值测试
一、基本原理
二、测试用例设计
三、案例第二日问题的边界值测试
四、针对输出域的边界值分析
五、案例佣金问题的边界值测试
六、边界值测试小结第三节等价类测试
一、基本原理
二、测试用例设计
三、案例第二日问题的等价类测试
四、针对输出域的等价类分析
五、案例佣金问题的等价类测试
六、等价类测试小结第四节基于决策表的测试
一、基本原理
二、测试用例设计
三、案例第二日问题的决策表测试
四、决策表测试小结第五节基于场景的测试
一、基本原理
二、测试用例设计
三、案例自动柜员机问题的场景测试
四、场景测试小结【课后作业】
1.仿照NextDate问题,针对PrevDate函数(计算当前输入日期的前一天)运用等价类测试法设计测试用例
02.当在某个检验点上可能得到的备选流数量很多时,将导致备选流数目的激增,如何解决该问题?【阅读书目】Myers,G.J.著,张晓明译.软件测试的艺术[M].北京机械工业出版社,
2012.第三章白盒测试技术【教学目标】通过本章教学,使学生理解白盒测试方法的基本概念、覆盖理论;掌握6种逻辑覆盖各自的特点及相应的测试用例设计方法;能够运用基本路径测试方法进行实际程序测试;理解对循环的测试和对变量的测试【重点难点】重点逻辑覆盖测试中的语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖,基本路径测试法难点嵌套循环结构的测试;白盒测试方法的优点、不足及适用范围【教学内容】第一节白盒测试概述
一、基本原理和特点
二、适用阶段
三、测试方法的评价第二节静态白盒测试
一、概述
二、代码检查
三、静态结构分析
四、案例自动柜员机问题的函数调用图分析
五、案例第二日问题的控制流图分析
六、静态白盒测试小结第三节对判定的测试
一、基本原理
二、测试用例设计
三、案例第二日问题的判定测试
四、对判定的测试小结第四节对路径的测试、基本原理
二、测试用例设计
三、案例第二日问题的路径测试
四、案例自动柜员机问题的路径测试
五、对路径的测试小结第五节对变量的测试
一、基本原理
二、测试用例设计
三、案例佣金问题的数据流测试
四、对变量的测试小结第六节白盒测试总结
一、测试方法总结
二、综合使用策略【课后作业】L为以下程序段设计一组测试用例,要求分别满足语句覆盖、判定覆盖、条件覆盖int testint A,int BifAlAND B10thenX=A-B;ifA=2OR B20thenX=A+B;return x;}【阅读书目】Tim Riley著,张爽译.测试之美[M].北京机械工业出版社,
2010.第四章单元测试【教学目标】通过本章教学,使学生理解单元测试的定义及内容;理解驱动模块和桩模块的概念;理解测试需求的定义及属性;掌握单元测试的过程【重点难点】重点驱动和桩模块的设计;单元测试的过程难点测试用例设计应考虑的因素【教学内容】第一节单元测试概述第二节单元测试的内容
一、静态检查
二、动态测试第三节驱动和桩模块的设计
一、驱动模块和桩模块的定义
二、驱动模块和桩模块的设计
三、案例账单计算问题的驱动设计第四节测试需求分析
一、测试需求概述
二、测试需求的定义
三、测试需求的属性
四、测试需求的分析
五、应注意的问题第五节单元测试的过程
一、测试过程概述
二、计划阶段
三、设计阶段
四、实施阶段
五、执行阶段
六、评估阶段【课后作业】
1.良好的单元测试是否能够代替集成测试?
2.实现以下程序中money类的加钱和判断钱数是否相等方法的测试packageJunitTest;public classmoney{privateintfAmount;〃余额private StringfCurrency;〃货币类型public moneyintamount,String currency{fAmount=amount;fCurrency=currency;}public intamount{return fAmount;}public Stringcurrency{return fCurrency;}public moneyadd moneym{〃力□钱return newmoneyamount+m.amount,currency;public booleanequals ObjectanObject{〃判断钱数是否相等if anObjectinstanceof money{money aMoney=moneyanObject;return aMoney.currency.equalscurrency amount==aMoney.amount;}return false;【阅读书目】Alan Page著,张爽译.微软的软件测试之道[M].北京机械工业出版社,
2009.第五章集成测试【教学目标】通过本章教学,使学生掌握集成测试的基本概念及策略;掌握成对集成、邻居集成和基于独立路径集成测试的基本思想;理解集成测试中基于分解的四种集成策略【重点难点】重点运用自顶向下的策略、自底向上的策略进行测试用例的设计难点测试用例设计应考虑的因素【教学内容】第一节集成测试概述
一、集成测试的定义
二、集成测试的内容第二节集成测试的评价。