- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
家族主讲戴骏炜本次培训您主要将了解系列的三大产品内存检测分析程序执行时间分析代码覆盖率检测本次培训您还能了解到软件测试的基本知识软件测试方法比较目前测试中存在的问题单元测试方法其它软件产品介绍什么是软件测试从软件工程的角度出发软件生命周期过程包括需求分析分析设计代码实现测试及应用然而仅测试阶段就又一次完全体现了软件生命周期的全过程这里涉及测试需求的定制各类测试计划测试过程的建立测试的开发测试的执行和测试结果的评估因此软件测试是在软件投入生产性运行之前对软件需求分析设计规格说明和编码的最终复审是软
IBM Rational 家族 __Purify Plus
主讲:戴骏炜
本次培训您主要将了解:
Purify Plus系列的三大产品
Purify:内存检测分析
Quantify:程序执行时间分析
PureCoverage:代码覆盖率检测
本次培训您还能了解到:
软件测试的基本知识
软件测试方法比较
目前测试中存在的问题
单元测试方法
IBM Rational其它软件产品介绍
什么是软件测试
从软件工程的角度出发,软件生命周期过程包括需求分析,分析设计,代码实现,测试,及应用。然而仅测试阶段就又一次完全体现了软件生命周期的全过程,这里涉及测试需求的定制,各类测试计划、测试过程的建立,测试的开发,测试的执行和测试结果的评估。因此软件测试是在软件投入生产性运行之前,对软件需求分析、设计规格说明和编码的最终复审,是软件质量保证的关键步骤,综合的说软件测试就是根据软件开发各阶段的规则说明和程序的内部结构而精心设计一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用例去运行程序,以发现程序错误的过程。
软件测试目的
通过测试来发现软件中的存在的各类错误
验证软件是否满足软件设计和任务书所规定的技术和要求为执行效率最大化定制数据采集
为软件可靠性和安全性评估提供依据
有效定义和实现软件成分由低层到高层的组装过程
现阶段软件质量的主要手段
软件测试原则
所有的测试都应追溯到用户需求;
在测试工作真正开始前的较长时间就进行测试计划
测试应以“小规模”开始逐步转向“大规模”
想要做到穷举测试不可能
测试用例应由测试输入数据及与之对应的预期输出这两个部分组成
程序员避免检查自己的程序
在设计测试用例时要包括合理的输入条件和不合理的输入条件
要妥善保存过程中的所有文件和记录
软件测试术语
测试计划
单元测试
集成测试
确认测试
系统测试
验收测试
测试用例
测试报告
软件测试方法
黑盒测试:
基于产品的功能来规划测试,检查程序各功能是否实现,并检查其中的错误
白盒测试:
基于产品的内部结构来规划测试,检查内部操作是否按规定执行,各部分是否被充分利用
软件测试方法比较
黑 盒 测 试
白 盒 测 试
测试规划
根据用户的规格说明,即针对命令、信息、报表等用户界面及体现它们的输入数据与输出数据之间的对应关系,特别是针对功能进行测试
根据程序的内部结构,如语言的控制结构,模块间的控制结构以及内部数据结构等进行测试
特点
优点
能站在用户立场上进行测试
能够对程序内部的特定部位进行覆盖测试
缺点
不能测试程序内部特定部位
如果规格书有误,则无法发现
无法检查程序的外部特性无法对未来实现规格说明的程序内部欠缺部分进行测试
方法举例
等价类划分
边值分析
比较分析
语句覆盖
判断覆盖
条件覆盖
判定/条件覆盖
基本路径覆盖
循环覆盖
模块接口测试
目前的测试存在的问题
软件的测试占了整个软件工程的30% -50%,但即使是最优秀测试专家设计出来的测试案例,也无法彻底地检测到内存上的问题。
当程序越来越多时,类的继承和关联越来越多时,内存问题也就越来越多,很多时候,开发人员在不经意的时候就带入了内存问题。
内存的问题是让人很难察觉的,特别是对于内存问题排名第一的Memory Leak来说,在几万行代码中出现Memory Leak的机率几乎是100%,而且靠一般的手段是很难检测出这种程序错误的。
引入:Purify
存储器成型工具。
收集方法和成型数据的目标级存储器并且查明应用程序储存器中的热点区域
单元测试内容
结构(逻辑)覆盖
功能测试
单元测试过程
检查编码是否遵循软件编程规范和标准;
自动或手工分析程序;
设计测试用例并运行测试用例;
错误跟踪分析。
单元测试覆盖内容
功能覆盖
输入域覆盖
函数交互覆盖
代码执行覆盖
单元测试可有以下特定的测试
声明测试
路径(覆盖)测试
循环测试
循环嵌套
边界值测试
等价类测试
接口测试
测试覆盖
目标:每个确定语句的每一个方向要测试到 ,每条语句最少执行一次。
声明覆盖
判断覆盖
条件覆盖
路径覆盖
声明覆盖内容
认为条件语句为真的时候测试通过。
int *P=NULL;
if (condifion)
{
P=var;
}
*P=123;
判断覆盖内容
要判断语句真假两方面后测试才通过。
int main (int x,int y)
{
if ((x==0)(y==0))
{
printf(y);
}
else
{
文档评论(0)