软件测试-第九章调试特性.ppt

上传人:牧羊曲112 文档编号:6610971 上传时间:2023-11-17 格式:PPT 页数:38 大小:484KB
返回 下载 相关 举报
软件测试-第九章调试特性.ppt_第1页
第1页 / 共38页
软件测试-第九章调试特性.ppt_第2页
第2页 / 共38页
软件测试-第九章调试特性.ppt_第3页
第3页 / 共38页
软件测试-第九章调试特性.ppt_第4页
第4页 / 共38页
软件测试-第九章调试特性.ppt_第5页
第5页 / 共38页
点击查看更多>>
资源描述

《软件测试-第九章调试特性.ppt》由会员分享,可在线阅读,更多相关《软件测试-第九章调试特性.ppt(38页珍藏版)》请在三一办公上搜索。

1、使用 IBM Rational Functional Tester 进行功能测试,调试特性,2,目录,调试基础 调试过程 使用 Rational Functional Tester进行调试调试提示和技巧,3,调试基础,调试需要几个命令。在进行之前理解这些概念是很重要的。断点 单步执行(Step Over)单步跳出(Step Out)单步进入(Step Into),Unit 标题,4,代码行例子,5,调试过程,递归调试过程,6,调试过程,从脚本中的一个已知点开始,并设置一个断点。启动调试器,并让它运行直到到达这个断点。调试器将会在这个断点行突然出现。使用单步执行(Step Over)功能,注意你

2、正在执行的行,直到产生了错误情形。这个错误一定是在你刚执行的行中的一个函数里出现的。打开标注在这行的函数的源代码,并在函数内部设置一个断点。重新启动调试器并运行,直到你到达新的断点。重复这个过程,直到你找到产生错误情形的行,7,使用 Rational Functional Tester 进行调试,ClassicsOnline项目 调试环境介绍 在调试模式下运行 问题1:无效的产品有效期 问题2:捕捉一个间歇发生的bug,8,ClassicsOnline项目,为了使你能够简单的进入调试操作,我准备了一个名为ClassicsOnline 的项目。你必须导入ClassicsOnline项目。你应当发

3、现三个脚本。所有这三个脚本都是按照Classics OnlineA应用程序记录下来的。,9,脚本 ClassicsATestScript,这个脚本是项目的主要测试脚本。在此脚本中,我们启动Classics 应用程序,验证composer/album树的内容,检查一张CD里的详细内容,并下一个订单。我们使用一个脚本来登录并且用另一个脚本输入信用卡信息。在测试脚本的最后,我们关闭这个应用程序。,10,脚本 ClassicsAMemberLogin,此脚本从一个数据池中读取用户名和密码,并在Member Logon屏幕中输入信息。,11,脚本 ClassicsAEnterCreditCardInfo

4、rmation,此脚本从一个数据池中读取信用卡的信息并将数据输入到Place an Order屏幕中。当下订单时,它会打开订单确认对话框。,12,调试环境介绍,让我们开始回顾调试环境。打开ClassicsATestScript脚本文件,并打开Functional Test 调试透视图。,13,调试视图,14,变量、断点和表达示视图,15,源脚本,脚本浏览器,控制台,任务,问题,16,在调试模式下运行,第一步是更改我们正在测试的应用程序的版本。在脚本的顶部,将startApp命令的参数应用程序的名字改为ClassicsJavaB。现在你可以像往常一样通过点击工具栏中的运行功能测试脚本图标来运行脚

5、本了。,17,问题1:无效的产品有效期,18,问题1的调试过程,让我们回到一个已知的状态。关闭Classics Online 程序,并且回到Functional Tester。假设这个练习是错误发生后,而你并没有看到真实的应用程序。进一步假设这个测试运行了整个晚上,并且计算机在我们进来前(非常有可能)已经重新启动过了。唯一的有用信息包含有日志文件。,19,问题1的调试过程,第一步:识别问题是什么 第二步:确定问题可能在什么地方 第三步:设置断点并走查代码,20,第一步:识别问题是什么,从日志文件中,我们知道在ClassicsAEnterCreditCardInformation.testMai

6、n中有一个未处理的异常。因此我们知道在信用卡数据里有一个问题。它在我们的测试或这个应用程序的变更方面是个问题。,21,第二步:确定问题可能在什么地方,日志文件已经指向了ClassicsAEnterCreditCardInformation脚本。因此,这看上去是开始查找问题的好地点。,22,第三步:设置断点并走查代码,打开调试透视图中的脚本进行走查,并设置你的断点 1.在Functional Tester 的左上角,点击Functional Test 项目视图来激活它。Functional Test 项目 视图,23,第三步:设置断点并走查代码,2.双击ClassicsAEnterCreditC

7、ardInformation脚本来打开它。这应当会打开一个脚本,看上去如图所示:,24,第三步:设置断点并走查代码,3.接下来,在脚本中的第一个可执行代码行上设置一个断点。,25,第三步:设置断点并走查代码,4.切换返回到ClassicsATestScript,并使用工具栏中的调试 Functional Test 脚本图标来运行脚本。5.选择一个日志文件并点击完成。6.脚本应当正常运行。当测试到了Place an Order页面时。Functional Tester 将会再次变成激活,并且你应当会看到在早先我们所看到的所有视图的所有信息。,26,调试工具栏,在调试视图中现在有一个活动的调试工具

8、栏。使用这个工具栏,你能恢复或停止回放,并且你能单步执行,单步进入,单步返回(或者单步跳出)一个方法。,27,变量视图,在变量视图中,你可以看到当前选中的堆栈框架的可视变量。,28,单步命令,你可以执行一个单步命令(单步执行,单步进入,等等),你就会指向由此箭头所指示的代码的当前行。,29,第三步:设置断点并走查代码,7.我们执行一次单步执行(Step Over),并看一下在屏幕上实际发生了什么。8.点击单步执行按钮执行代码的第一行。这一行代码对数据池执行了一个调用,并将返回值输到屏幕上的Card Number字段。9.当执行时,切回到Functional Tester,可以看到指示代码中的当

9、前行的箭头已经移到下一行。再次单步执行,并为Card Type输入数据池值。10.再次切回到Functional Tester,可以看到我们现在处在代码的下一行上。再单步跳过,从数据池输入Expiration Date值。,30,第三步:设置断点并走查代码,11.单步跳过几次下此订单。我们现在可以更清楚地看到错误。问题是,在Expiration Date字段中输入的值“1212”不符合任何有效的产品有效期格式。12.既然我们已经识别出了问题,我们就可以结束调试过程,进入我们的数据池,并修复产品有效期。13.当你结束调试时,Functional Tester返回到Functional Test透

10、视图中。14.在ClassicsAEnterCreditCardInformation脚本的数据池值中修复格式。15.在你再次运行你的脚本之前,要确认清除断点。要完成此操作,在断点上右键点击,并选择切换断点。16.运行ClassicsATestScript脚本,并验证bug确实被修复了。,31,第四步:重复步骤 3 直到发现问题,使用记录和回放脚本的方式并不是很少见的,但是随着你的脚本在复杂性上不断增加,这就会变得更棘手。如果我们还没有发现问题,我们可能已经缩小或完全转变了我们所关注的范围。,32,问题二:捕捉一个间歇发生的 bug,根据教材中的具体步骤捕捉一个间歇发生的 bug第一步:识别问

11、题是什么 第二步:确定问题可能在什么地方 第三步:设置断点并走查代码 第四步:重复步骤三直到发现问题,33,调试提示和技巧,关于断点 断点视图 扩展功能 在控制台视图找到问题,34,关于断点,断点可以通过从所需行的左边空白处使用右键点击菜单来设定或取消。设定一个断点与增加或删除一个断点是相同的操作。,35,断点视图,36,扩展功能,37,在控制台视图找到问题,有时最好的线索可以在控制台视图中发现。在一个抛出异常的例子中,可能会有一个堆栈跟踪或其它有价值的信息。,38,总结,现在,大家对如何使用调试器有了一些了解了,大家可以使用这些知识来调试更复杂的脚本 在调试测试脚本过程中重要的事情是,更好地理解你的测试代码是在做什么,而不管你的测试数据是从哪里来的,以及它是如何更改的,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号