软件测试基础知识

一、软件测试的定义:

1、测试的含义:
       首先是一项活动,在这项活动中某个系统或组成的部分将在特定的条件下运行,结果将被观察和记录,并对系统或组成部分进行评价。

2、软件测试:
       使用人工或者自动化手段,来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。(IEEE)
3、对软件测试的定义还有两种描述:
       定义1:软件测试是为了发现错误而执行程序的过程;
       定义2:软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计的一批测试用例并利用这些测试用例运行程序以及发现错误的过程,即执行测试步骤。
4、测试结果:

       找出缺陷和故障;
       显示软件执行正确
二、软件测试的目的 :
1、根本目的:
       发现/修改缺陷
       满足用户需求,提高用户满意度
       优化软件品质
三、软件测试的对象:
1、软件测试不等于程序测试;
2、软件开发过程中所产生的需求规格说明、概要设计规格说明、详细设计规格说明以及源程序、用户文档都是软件测试对象。
四、软件测试的环境:
1、测试环境:

软件+硬件+网络;

       是指测试软件的时候,软件运行的平台;
2、测试环境的原则:
       真实、干净、无毒、独立
五、软件测试的时间:
1、软件测试工作要尽早开展;
2、软件测试工作覆盖整个软件生命周期

六、软件测试信息流程及周期性:

1、测试的信息流程

       测试过程中需要三类输出:软件配置、测试配置和测试工具

       测试最终的结果或输出:得到软件的功能正确或找出缺陷

2、软件测试周期性

       软件测试周期性是指测试-改错-在测试-在改错

七、软件测试的停止依据:

       根据单位时间内查找故障的数量和严重程度决定是否停止测试

八、软件测试的原则:

1、尽早的和及时的测试

2、测试前应当准备好测试数据和与之对应的预期结果这两部分

3、测试输入数据应包括合理的输入条件和不合理的输入条件

4、程序提交测试后,应当由专门的测试人员进行测试

5、严格执行测试计划,排除测试的随意性

6、测试用例的所有相关预期结果做全面的检查

7、充分注意测试当中的群体现象

8、保存测试计划、测试用例、出错统计和最终分析报告,为维护工作提供充分的资料

九、软件测试的误区:

1、软件测试技术要求不高,至少比编程容易多了

2、若发布的软件质量问题,那是软件测试人员的错

3、软件测试是测试人员的事,与开发人员无关

4、根据软件开发瀑布模型,软件测试是开发后期的一个阶段

5、有时间就多测试一些,来不及就少测试一些

6、软件测试是非建设性的工作,甚至是破坏性的,测试中发现错误是对责任人工作的一种否定

十、测试与开发的关系:

 

第一章 (判断) 1 程序测试是为了验证程序的功能而执行程序的过程× 2 软件测试是从编码开始,到开发结束× 3 软件缺陷的最大来源是产品说明书 √ 4 软件测试是软件质量保证的重要手段√ 5 软件测试是软件生命周期中的一个阶段性工作× 6 烟雾测试(冒烟测试) 目的是确认软件基本功能正常,可以进行后续的正式测试工作√ 7 测试脚本是使用程序设计语言编写的可执行的程序× 8 软件测试在软件开发过程中是可选的,在项目时间比较紧时,可以省略测试的过程× 软件测试的误区 误区一:如果发布出去的软件有质量问题,都是软件测试人员的错 误区二:软件测试技术要求不高至少编程容易多了 误区三:有时间就多测试一些,来不及就少测试一些 误区四:软件测试是测试人员的事,与开发人员无关 误区五:根据软件开发瀑布模型,软件测试是开发后期的一个阶段 软件测试的原则-1 1 所有测试的标准都是建立在用户需求之上。 2 软件测试必须基于“质量第一”的思想去开展各项工作,当时间和质量冲突时,时间要服从质量。 3 事先定义好产品的质量标准,只有有了质量标准,才能根据测试的结果,对产品的质量进行分析和评估。 4 软件项目一启动,软件测试也就是开始,而不是等程序写完,才开始进行测试。 5 穷举测试是不可能的。甚至一个大小适度的程序,其路径排列的数量也非常大,因此,在测试中不可能运行路径的每一种组合 软件测试的原则-2 1 第三方进行测试会更客观,更有效。 2 软件测试计划是做好软件测试工作的前提。 3 测试用例是设计出来的,不是写出来的,所以要根据测试的目的,采用相应的方法去设计测试用例,从而提高测试的效率,更多地发现错误,提高程序的可靠性。 4 对发现错误较多的程序段,应进行更深入的测试。一般来说,一段程序中已发现的错误数越多,其中存在的错误概率也就越大。 5 重视文档,妥善保存一切测试过程文档(测试计划、测试用例、测试报告等) 软件测试的原则-3 1 应当把“尽早和不断地测试”作为测试人员的座右铭 2 回归测试的关联性一定要引起充分的注意,修改一个错误而引起更多错误出现的现象并不少见 3 测试应从“小规模”开始,逐步转向“大规模”。 4 不可将测试用例置之度外,排除随意性。 5 必须彻底检查每一个测试结果。 6 一定要注意测试中的错误集中发生现象,这和程序员的编程水平和习惯有很大的关系 7 对测试错误结果一定要有一个确认的过程 第二章 (判断) 1 需求评审和设计评审是静态测试方法√ 2 最正式的评审方法是会议审查√ 3 需求评审的参与者当中,必须要有用户或用户代表参与 √ 4 每次的需求会议评审都需要测试人员、业务人员、业务主管等相关人员参与× 5 需求评审需要确定评审的标准√ 6 需求评审中最重要的是“从用户的角度”进行评审√ 7 系统架构评审重点在系统的耦合度和内聚力上× 第三章 (填空) 1 测试用例的概念:是可以被独立执行的一个过程,一个最小的测试体 2 测试用例的三种状态:通过,未通过,未进行测试 3 测试用例的分类:正面,负面 4 由一系列的测试用例并与之关联的测试环境组合而构成的集合称为:测试套件 测试自动化 1 误区:自动化测试可以取代手工测试 2 Jmeter使用的自动比较技术的验证模式是Assert: 断言 3 掌握Jmeter的简单使用方法和概念,如下图,如做如下测试:模拟20个用户并发访问1次www.suse.edu.cn, Jmeter的使用 要测试网站负载,应在“线程组”下添加…. TestComplete的使用 1 使用TC测试网站www.baidu.com的搜索功能(搜索“四川理工学院”),搜索结果的网页中应该有“四川理工学院…”的链接文本 2 脚本的类型: 线性脚本、结构化脚本、关键字脚本、数据驱动脚本第一章 (判断) 1 程序测试是为了验证程序的功能而执行程序的过程× 2 软件测试是从编码开始,到开发结束× 3 软件缺陷的最大来源是产品说明书 √ 4 软件测试是软件质量保证的重要手段√ 5 软件测试是软件生命周期中的一个阶段性工作× 6 烟雾测试(冒烟测试) 目的是确认软件基本功能正常,可以进行后续的正式测试工作√ 7 测试脚本是使用程序设计语言编写的可执行的程序× 8 软件测试在软件开发过程中是可选的,在项目时间比较紧时,可以省略测试的过程× 软件测试的误区 误区一:如果发布出去的软件有质量问题,都是软件测试人员的错 误区二:软件测试技术要求不高至少编程容易多了 误区三:有时间就多测试一些,来不及就少测试一些 误区四:软件测试是测试人员的事,与开发人员无关 误区五:根据软件开发瀑布模型,软件测试是开发后期的一个阶段 软件测试的原则-1 1 所有测试的标准都是建立在用户需求之上。 2 软件测试必须基于“质量第一”的思想去开展各项工作,当时间和质量冲突时,时间要服从质量。 3 事先定义好产品的质量标准,只有有了质量标准,才能根据测试的结果,对产品的质量进行分析和评估。 4 软件项目一启动,软件测试也就是开始,而不是等程序写完,才开始进行测试。 5 穷举测试是不可能的。甚至一个大小适度的程序,其路径排列的数量也非常大,因此,在测试中不可能运行路径的每一种组合 软件测试的原则-2 1 第三方进行测试会更客观,更有效。 2 软件测试计划是做好软件测试工作的前提。 3 测试用例是设计出来的,不是写出来的,所以要根据测试的目的,采用相应的方法去设计测试用例,从而提高测试的效率,更多地发现错误,提高程序的可靠性。 4 对发现错误较多的程序段,应进行更深入的测试。一般来说,一段程序中已发现的错误数越多,其中存在的错误概率也就越大。 5 重视文档,妥善保存一切测试过程文档(测试计划、测试用例、测试报告等) 软件测试的原则-3 1 应当把“尽早和不断地测试”作为测试人员的座右铭 2 回归测试的关联性一定要引起充分的注意,修改一个错误而引起更多错误出现的现象并不少见 3 测试应从“小规模”开始,逐步转向“大规模”。 4 不可将测试用例置之度外,排除随意性。 5 必须彻底检查每一个测试结果。 6 一定要注意测试中的错误集中发生现象,这和程序员的编程水平和习惯有很大的关系 7 对测试错误结果一定要有一个确认的过程 第二章 (判断) 1 需求评审和设计评审是静态测试方法√ 2 最正式的评审方法是会议审查√ 3 需求评审的参与者当中,必须要有用户或用户代表参与 √ 4 每次的需求会议评审都需要测试人员、业务人员、业务主管等相关人员参与× 5 需求评审需要确定评审的标准√ 6 需求评审中最重要的是“从用户的角度”进行评审√ 7 系统架构评审重点在系统的耦合度和内聚力上× 第三章 (填空) 1 测试用例的概念:是可以被独立执行的一个过程,一个最小的测试体 2 测试用例的三种状态:通过,未通过,未进行测试 3 测试用例的分类:正面,负面 4 由一系列的测试用例并与之关联的测试环境组合而构成的集合称为:测试套件 测试自动化 1 误区:自动化测试可以取代手工测试 2 Jmeter使用的自动比较技术的验证模式是Assert: 断言 3 掌握Jmeter的简单使用方法和概念,如下图,如做如下测试:模拟20个用户并发访问1次www.suse.edu.cn, Jmeter的使用 要测试网站负载,应在“线程组”下添加…. TestComplete的使用 1 使用TC测试网站www.baidu.com的搜索功能(搜索“四川理工学院”),搜索结果的网页中应该有“四川理工学院…”的链接文本 2 脚本的类型: 线性脚本、结构化脚本、关键字脚本、数据驱动脚本
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值