工具使用手册dottest培训手册_第1页
工具使用手册dottest培训手册_第2页
工具使用手册dottest培训手册_第3页
工具使用手册dottest培训手册_第4页
工具使用手册dottest培训手册_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1.DOTTEST 简介61.1.dotTEST 工作环境61.2.dotTEST 中重要的窗口6质量任务视图7测试用例管理器视图7打开测试用例管理器视图7覆盖率视图7度量视图7抑制视图72.静态分析82.1.练应用编码标准8在 BankExample 上运行编码标准分析82.2.练习练习练习查看编码标准. 9234在 BankExample 上查看 dotTEST 结果10查看规则描述10 在一小组文件上运行编码标准112.3.练习运行替代的 dotTEST 配置115 为编码标准检测自定义配置122.4.练习练习练习抑制管理14678抑制一个 解除抑制.14.15抑制源代码中的.152.5

2、.运行 BugDetective16练习 9 理解 BugDetective.162.6.练运行度量170 运行度量配置173.单元测试183.1.练练练开发和运行单元测试19123 使用 Test Case Explorer19从 Test Case Explorer 中运从 Solution Explorer 中运试20试213.2.练练交互式对象工厂方法生成214 BankExample 的交互式对象工厂方法生成215 为对象工厂方法断言243.3.练练练交互式测试生成256 BankExample 的交互式测试生成257 查看生成的单元测试268 为测试断言263.4.练理解符号之间的

3、依赖关系269 查看 BankExample 中的类型依赖关系273.5.非交互式对象工厂方法生成28练习 20 BankExample 的非交互式对象工厂方法生成283.6.非交互式测试生成29练习 21 BankExample 的非交互式测试生成293.7.作为回归套件运试30练习 22 运试并检查断言30确保带有生成测试的 Dottest.Example.BankExample 项目在 VS IDE 中打开.必要的情,重复上一个练习303.8.测试驱动开发30练习 23 在执行方法之前生成测试303.9.生成测试的模板32练习 24 生成测试的模板323.10.在手动编写的测试中断言33

4、3.11.练习 25 在手动编写的测试中断言333.11.1.清除已生成的断言343.12.Observing Coverage Information错误!未定义书签。练习 26 观察覆盖率信息343.13.TODO: 导入覆盖率353.14.运行应用程序承载测试35练习 27 练习应用程序承载测试353.15.执行选项36练习 28 在 Execution中评审选项363.16.调试单元测试37练习 29 调试测试373.17.从应用程序运行搜集覆盖率38练习 30 -用覆盖度量运行应用程序383.18.理解桩39练习 31 审核 dotTEST 自带的桩393.19.指定测试执行时使用的

5、桩39练习 32 回顾指定桩的方法403.20.创建练习 33 练习 34 的桩40使用桩向导40使用桩413.21.使用数据源41练习 35 用多个输入运试41练习 36 断言424.其它话题424.1.练习练习从命令行运行 dotTEST433738 使用 dottestcli43 使用 dottestcli 在单个上运行444.2.练习 39结果到团队服务器44 使用 dottestcli报告给团队服务器445.PARASOFT46ChinaUSAEurope47.46.46其它地区461.dotTEST 简介dotTEST 是自动错误防范, 使.NET 静态分析执行分析和代码评审自动化

6、,以助于开发者迅速制作出可靠的代码。dotTEST 是 Parasoft Test 的扩展,而 Parasoft Test 是所有Parasoft 语言工具的的框架,如 Jtest, C+test 和 SOAtest.静态分析设置一个预防错误的可靠流程。它覆盖了代码标准 (450 条以上规则,和任何数量的自定义规则),数据流分析和代码度量.执行分析包括运行单元测试和 应用程序承载测试,交互式和非交互式单元测试生成,测试覆盖率和存根机制。dotTEST 融入 Visual Studio, 为程序开发员提供一个自然的环境. 与其它 Parasoft 工具一起使用时, dotTEST 促进了一个一致

7、定义的团队工作流程,包括缺陷预防规则的常规设置, 编码标准任务的自动分配和报告,同等代码复查的促进和追踪等。1.1.dotTEST 工作环境dotTEST 被融入到 Visual Studio IDE, 所以用户很快会识别出常见的 GUI.你可以在 VSSolution Explorer 中选择程序或文件,并在选择的上运行 dotTEST 命令.结果随后会在 IDE 上展现. 你可以与 dotTEST 相互作用查看结果,再分派用 IDE 抑制错误等等. 当dotTEST 创建测试项目,则会将它们添加到当前的解决方案中,以促进查看和修改自动生成的测试。1.2.dotTEST 中重要的窗口五个显示

8、 dotTEST 运行的结果的主要 IDE 窗口:质量任务视图,测试用例管理器视图,覆盖率视图,度量视图和抑制视图.这包括如测试运行报告的/错误,覆盖率和经识别但被抑制的等等信息.质量任务视图质量任务视图是为dotTest用户列出测试结果和任务的地方, 包括:1.静态分析2.测试用例结果3.代码评审任务选择 Parasoft > Show View> Quality task 打开质量任务视图.测试用例管理器视图测试用例管理器视图 显示所有手动编写或dotTEST自动生成的单元测试.它用户在测试,管理测试,运行多个选择的测试,查看测试运行的结果之间导航。选择Parasoft >

9、; ShowView > Test Case Explorer.打开测试用例管理器视图.覆盖率视图覆盖率视图报告最近测试用例执行获得的行覆盖率.覆盖的行的数量和百分比通过项目,命名空间,类和方法显示. 该视图在你用追踪覆盖率的测试配置运择Parasoft > Show View> Coverage.打开覆盖率视图.试用例执行后显示. 选度量视图度量视图展示最近运行的一个度量计算和报告或任务分配的测试配置的统计数据. 用户可以在这获得可维护指数,McCabe 环路复杂性或方法中代码行数的详情. 选择Parasoft >Show View > Metrics.抑制视图

10、抑制视图列出所有你或者你的队员选择抑制(如忽略)而不是解决的静态分析的实例.它可以管理和解除抑制所有被抑制的开抑制视图. 选择 dotTEST > Show View> Suppressions打单元测试精灵交互式单元测试生成和推进用测试覆盖代码的进程. 选择dotTEST > Unit Tests Genie打开. 建议将其作为选项卡文档停驻.2.静态分析静态分析是识别容易导致错误的,这些可能导致功能,性能或安全问题. dotTEST通过检查组装检测的 IL 代码和源代码执行静态分析. 检查 IL 代码有适用于所有.NET 语言的优势;然而,有些规则检测只能在源代码级别执行

11、.2.1.应用编码标准在本章节中,练习在 dotTEST 自带的样本项目上运行代码标准分析.练在 BankExample 上运行编码标准分析在样本库项目上运行编码标准分析:1.如下a.并打开库用例:打的例子如下管理器,浏览到 dotTEST 安装目录下的 examples 目录.典型C:Program FilesParasoftdotTEST9.xexamples 目录,粘贴到临时目录中,如b.c:tmpc. 使用 VS IDE 打开 BankExampleCSharp Dottest.Example.BankExample10.sln (VS2010) orDottest.Example.B

12、ankExample9.slnDottest.Example.BankExample8.sln (VS2005)(VS2008)or12.3.4.在解决方案管理器中选择 Dottest.Example.BankExample 项目节点.选择 Parasoft > Test using > Built-in > Demo Configuration. 运行静态分析测试完成后,复审 Test Progress 会话框.1- Note the naming convention for distinguishing solutions and projects for VS2005

13、, VS2008 andVS2010. The suffixes are 8, 9, 10 correspondingly. For a sake of simplicity the suffixes are skipped laterin this document.该面板显示以下关于编码标准测试运行的信息:执行编码标准分析的时间.File / Symbols Checked: 在编码标准分析过程中被检测的文件或类的数量.File / Symbols Skipped:在编码标准分析过程中没有被检测的文件或类的数量.Failed Runs: 因为某些测试运行失败的数量,如编译问题.Violat

14、ions Found:所有发现的数量.Violations Suppressed:发现被提前抑制的数量.Number of Rules Violated:的规则数量.5.dotTEST 视图: Parasoft > Show的地方.你可以拖动这个视图,View > dotTEST.这是 dotTEST 报告编码标到任意合适的位置. (大多数用户喜欢将准它与其他 VS 显示编译警告的窗口放在一起等)2.2.查看编码标准编码标准分析中发现的任何于以下被分类:都会在 dotTEST 视图中列出,以树的形式组织数据. 结果可以基Project:发现User:被分配Category:的 Vi

15、sual Studio 项目.的用户的用户名.种类 编码标准或单元测试.Subcategory:规则所属的分类 (例如. “安全”)Namespace:Task Type: Severity:Location:发生名空间,如果能被识别.对的规则的简短描述.的严重性,从 1 到 5,等级为 1 的是最严重的.发生的文件位置.如果你想要显示或隐藏任何以上命名的组,可以通过使用 Configure ContentsQuality Tasks 视图的左上角单击下行箭头 > Configure Contents.你可以定义不同的视角.会话切换.在练习 2 在 BankExample 上查看 dot

16、TEST 结果在库示例上执行编码标准分析之后查看发现的错误(如练所述):1. 在 dotTEST 视图中扩展分支. 如果它不可见,则选择 dotTEST > Show View> QualityTasks. dotTEST 视图将会显示检测到的编码标准错误发生的行和对错误的简短描述. 每个编码标准消息报告2. 双击 Line . Perform null check for 'wit' when using the 'as' operator 节点. 这将会使光标指向发生的文件 BankAccount.cs 的行.练习 3 查看规则描述为了了解关于在

17、库示例上运行初始编码标准测试过程中识别的编码标准错误:1. 右键单击 Line . Perform null check for 'wit' when using the 'as' operator 节点, 从快捷菜单中选择 View Rule Documentation. dotTEST 将会显示内置帮助浏览器中的规则的信息.注意该规则描述通常提供对一些编码练习和引起昂贵开销的潜在的重要洞悉. 它还推荐使用给练习 4 在一小组文件上运行编码标准你也可以在一小组文件上运行代码标准. 当你想要在开发的过程中运行代码标准时这样做尤其有用。可以在你登陆之前或者作出一些

18、改变之后运行编码标准..5.在 Visual Studio 中打开 Dottest.Example.BankExample.转到 Solution Explorer 并打开 Dottest.Example.BankExample 项目. 选择 BankAccount.cs.Run dotTEST 选择 Parasoft > Test using > Built-in > Demo Configuration.注意现在 dotTEST 仅在 BankAccount.cs 上运行给定的配置2.3.运行替代的 dotTEST 配置内置或用户定义的多个测试配置 ( 被称

19、为 TestdotTEST 可以快速简单的Configurations).通过 Parasoft > Test using 菜单这些配置.也可以通过 dotTEST 工具栏上的 Test Using 按钮.定规则的最佳方法.例如, 一些规则只是为了提示开发员查看一些代码,而其它则指出代码中可能存在的 bug.我们建议你阅读规则文档.你也可以使用 Parasoft > Test history 菜单最近一次使用的测试配置. 到目前为止,你只使用了 Demo Configuration 测试配置.在稍后的过程中,你可以运行附加的测试配置。测试配置被分为三大类:1.User-Define

20、d:这些都是保存在本地的可修改的配置. 用户定义的配置可以创建,或者从现有的配置修改.Built-In:这些是由 dotTEST 开发员配置的只读配置. 虽然它们不能被修改,但是2.可以作为用户定义的配置被, 成为可修改的配置.3.Team:dotTEST 是设计为与 Parasoft 团队服务器一起使用的。通过团队服务器,dotTEST 配置可以在整个团队上保存并可. 团队配置通常通过管理者或定义,上传到团队服务器以被每个人使用,包括自动测试进程.选择 Parasoft > Test using > Built-in > <configuration name>

21、.运行其中一个配置.你可以用 User 或 Team 类别中的配置做相同的动作.练习 5 为编码标准检测自定义配置每个企业/都有本身的一套编码标准规则.并且,开发员经常要在基于他们的经验上遵守附加规则。所有的这些都通过 dotTEST's 配置管理来促进进行.了解如何创建新的配置并打开/关闭编码标准规则:在 VS IDE 中打开 Dottest.Example.BankExample 解决方案. 选择 Parasoft > Test Configurations右键单击 Built-in > Demo Configuration, 然后从快捷菜单选择 Duplicate.

22、A new1.2.3.configuration named 一个名为 Demo Configuration 的新配置将会被添加到User-defined 类别.选择 User-defined > Demo Configuration, 然后在右边的窗格上端重命名配置为 MyNew Coding Standards.单击 Apply 保存该配置,Close.窗口.在 Dottest.Example.BankExample 项目上使用新建的配置运行 dotTEST. 注意在文件4.5.6.CustomerGroup.cs 中有一个报告的此规则的检测.避免在 Exception上使用'

23、;catch'你将会禁用7.8.9.重新打开测试配置会话,选择 User-defined > My New在右边的面板打开 Static 选项, 扩展 Exceptions 类别.清除消息盒,避免在'Exception'上使用'catch'CodingStandards.10. 一些规则是可参数化的, 他们被用一个黑点标记.参见例子the BRM.FIELDNAME规则.右键单击该规则,选择 View/Change Rule Parameters.11. 单击 Apply 保存该配置, Close 窗口.12. 使用修改的配置再次运行 dotTES

24、T. 注意步骤 6 中报告的再显示.2.4.抑制管理当你遵循一个编码标准规则,但是决定在一些单独的异常情抑制。通过抑制,你可以继续检查你的代码是否遵循该规则,而消息。忽略该规则时,你可以使用重复接收到蓄意的练习 6 抑制一个了解如何抑制 dotTEST 报告的:.在 Dottest.Example.BankExample 项目上使用 Demo Configuration 配置运行 dotTEST在 dotTEST 视图中, 扩展分支,知道你看见某个类别的所有.右键单击其中一个,从快捷菜单中选择 Suppress Task.在打开的会话框中,输入描述需要抑制选择信息的理由的短语或句

25、子.例如 输入注意如果你不想接收到一个指定规则的任意的错误信息时,我们建议你修改 dotTEST 配置,这样它们就再检测该规则。“Learning how to suppress”。选择“ Suppress on Team Server ” ( 如果你没有团队服务器连接,则会出现Suppression locally) .关闭该会话框之后,相关的编码标准错误将会从 dotTEST 视图中移除.5.6.7.转到 dotTEST> Show View> Suppression. 抑制的将会显示在此窗口.8.重复该测试.你会注意到在上一个步骤中抑制的没有再被报告.练习7 解除抑制了解如何

26、解除在练习 6 中抑制的:1.选择 Parasoft > Show View> Suppression 打开抑制视图. 你可以到与 dotTEST 视图一起.这个窗口2.注意抑制视图显示以下信息:a.b.c.d.e.Message: 抑制的.reason: 抑制的理由.resource: 抑制应用的文件.user: 抑制错误的人的用户名.date: 抑制被首次应用的日期.3.在 Suppression View 中选择抑制以解除该错误的抑制, 单击视图顶端的红色 X按钮.则会从此窗口移除.4.重复该测试(确保你是在整个 Dottest.Example.BankExample 项目上

27、运行). 注意你解除抑制的在 dotTEST 视图中又被报告了.练习8 抑制源代码中的抑制一个比较倾向的方法是在源代码中提供一个注释. 当你使用 C# 代码时可以使用这一方法. 这种抑制的方法很好,因为它是抑制一个起的时候也可用,也很容易被审核。的特定实例,且该抑制与源代码一了解如何抑制 dotTEST 报告的:1.2.3.在 Dottest.Example.BankExample 项目上使用 Demo configuration 配置运行 dotTEST.在 dotTEST 视图中扩展分支,知道你看到某个种类的所有.双击其中一个 跳 转到有 的源行 ( 我们称为你选择了 文件 Custome

28、rGroup.cs 中的 PB.CONSOLEWRITE在行的尾端添加如下的注释:System.Console.WriteLine("Problems with customer " / parasoft-suppress PB.CONSOLEWRITE)4.5.保存该文件,并再次运行 Demo Configuration. 以上将被报告.2.5.运行故障在上个练习中, 我们展现了编码标准的示例. 编码标准是通过在源或者 IL 代码中搜索某个模式防止代码中出现错误的强大的能力.式. Bug Detective 提供一种通过代码执行查找错误的更练习 9 理解 BugDetec

29、tive在 Dottest.Example.BankExample 项目上使用 BugDetective 配置运行 dotTEST.'sw' 在 CreditCard.cs 中可能为空在 dotTEST 视图中, 扩展树,注意当 filePath 字符串长度在 200 字符以上时修复 NullReferenceException 。观察dotTEST 视图中和源代码中应用程序的可能的路径.注意dotTEST 不在抑制视图中显示源代码抑制.这些可以通过为 parasoft-suppress 使用文本查找在代码基搜索到.2.6.运行度量分析Parasoft dotTEST 提供在代

30、码上测量各种不同软件度量的方法.这些包括如圈复杂度,可维护指数等。 在本章节中,学习这一特性.练0 运行度量配置在练习中, 你将:从配置管理器中选择可用的度量在示例项目上运行度量分析审核结果审核配置管理器中的度量规则1.2.在 VS 中打开 Dottest.Example.BankExample.sln.转到 Parasoft > Test Configuration 并右键单击名为 Metrics 的内置配置, 选择 duplicate.3.4.5.重命名的配置为 MyMetrics 或其他你喜欢的名字.确保选定了新的配置.右键单击 Static 选项卡,然后单击 Metrics.6.

31、注意,列出的有好几个度量. 每个度量都有一个名字,应用的登记。 有些还有指定可接受的值的范围.在任意其中之一单击,然后选择 View Documentation. 你将会看到一个弹出的文档窗口. 度量的文档通常会告诉你度量是如何计算的,偏好的值,以及你如何通过这些值获益.7.8.有些还你改变参数. 你可能需要改变参数以适合你的需求,因为不同的公司对度量有这不同的政策.同时要注意度量选项卡上端有两个选项.这些选项dotTEST 面板中获取度量值的和编码标准.9.你获取报告中的度量信息,在在你的代码上运行度量并审核结果1.2.选择 BankExample 项目.运行你刚刚创建的 MyMetrics

32、 配置. ( 选择 Parasoft > Test Using > User >MyMetrics)3.你会发现有些度量被了 (假设可接受的范围没有被改变,如果你没有看到任何,你可能需要改变一些方法,使它们违背这些度量).在这些中任意双击一个,转到一个源代码,就像编码标准4.5.一样.然后转到 Parasoft > Show View ,选择 Metrics. 这将会调出一个 Metrics 视图,包含计算的度量信息.6.如果要查看给定的类或方法的度量值,VS 中的类视图, (你从 VS 菜单可以选择View > Class View). 选择你希望度量存在的类.

33、 度量视图中的值将会改变,反映这一点.你也可以在类视图的底端选择单个的方法,查看一个给定方法的值。3.单元测试单元测试使用以最小功能点开头的软件代码,代表性的有单个的类或者方法.单元测试可以被扩展到跨单元和子模块,以及模块和应用程序. 如果每个单个的类在封闭状态下被完全测试,然后与其他的单元一起作为子模块,模块或应用程序的一部分, 这些测试可以检查或预防大多数在软件的生命周期出现的错误.在本章节内你会了解如何探讨,运行并创建测试,如功能性测试和回归测试。3.1.开发和运行单元测试dotTEST 附带的视图测试用例Test Case Explorer, 该视图和 SolutionExplorer

34、 或 Class View 都可以被用为开启测试.练1 使用 Test Case Explorer所有测试, 包括自动生成和手动编写的单元测试,可以使用 Test Case Explorer 视图查看.1.重新构建整个 Dottest.Example.BankExample 解决方案. 一些测试被包含在该项目中.打开 Parasoft > Show View > Test Case Explorer.2.3.4.单击 Refresh 按钮, 以从中加载最新的信息.扩展树,以查看结果的标记修饰.)中所有的测试和测试结果. (测试运行之后,节点被指示最近5.双击树中的一个测试节点,导航

35、到 NUnit 测试节点.测试也可以通过用户动作被管理,如忽略或删除.练2 从 Test Case Explorer 中运试1. 在 Test Case Explorer 中选择一个或多个测试.2. 右键单击加亮标注的测试,选择 Test Using > Built-in > Run Tests and CheckAssertions.Test Progress 会话显示以下单元测试的信息.Executed test cases 执Passed 通过的测试数量试的数量Failed 失败的测试数量(例如. 断言失败, 抛出预期之外的异常或死机)Skipped 跳过的测试

36、数量 (例如,因为 Ignore 属性)Quality Tasks 视图: Parasoft > Show View > Quality Tasks 显示测试运行的结果,包括异常堆栈跟踪和断言失败的.Test Case Explorer 视图升级,指示测试通过或失败状态.以下测试配置可以被用为运试:1.Built-in > Run Tests and Check Assertions可用于运行生成的测试和计算覆盖率.a.b.c.检查断言但是不计算测试的节点的节点覆盖率 在测试运行过程中运行默认存根2.Built-in可用于a.> Run Tests and Update

37、 Assertions生成测试的断言.并更新断言和期望的异常b.c.不计算覆盖率在测试运行中应用默认存根3.Built-in > Unit Testing > Run Tests Without Stubs可用于快速运行手动编写的测试,不应用默认存根,因此用来运行自动生成的测试是不安全的.a.b.c.检查断言, 但不断言不计算覆盖率不应用存根4.Built-in > Unit Testing > Debug Tests Without Stubs可用于调试手动编写的测试。不应用默认存根,因此用来运行自动生成的测试是不安全的.a.b.c.d.检查断言, 但不断言不计算覆盖

38、率不应用存根给测试附加调试器5.Built-in > Unit Testing > Debug Generated Tests可用于调试生成的测试:a. 检查断言,不断言b.c.d.不计算覆盖率运行期间应用默认的存根给测试附加调试器练3 从 Solution Explorer 中运试1.2.在 Solution Explorer 中选择项目或文件右键单击加亮标注的测试,选择 Test Using > Built-in > Run Tests and CheckAssertions.3.2.交互式对象工厂方法生成dotTEST 可以交互式生成测试.首先, 必须创建合适的对

39、象,之后可用于测试. 对象都是通过对象工厂方法交互式或非交互式产生的. 如果一个对象在构建上需要附加的对象, 如被传递给类型构造函数,则这些对象工厂方法必须首先被创建.练4 BankExample 的交互式对象工厂方法生成.5.6.打开 Dottest.Example.BankExample 解决方案. 建立解决方案.打开 Unit Tests Genie view: Parasoft > Show View > Unit Tests Genie.将该视图作为选项卡式文档停驻,: 右键单击标题> Dock as Tabbed Document.单击 Refres

40、h 按键,刷新 Assemblies 面板中列表.选择 Dottest.Example.BankExample 和 Dottest.Example.BankExample.DotTest.右键单击,选择 Load Assemblies. 精灵加载选择的,并分析它们的符号.7.扩展符号树到 Dottest.Example.BankExample > Dottest.Example.BankExample > CreditCard. 该类在 Factories 列中有一个黄色的指示符,这表示没有该类型的工厂方法,但是工厂方法可以很容易被生成.该类型的所有成员方法也有一个黄色的指示符,

41、意味着这些方法的必要输入没有被任何所知的对象方法工厂制造, 但是也很容易被生成.右键单击 CreditCard ,选择 Generate object factory methods.8.9. 出现了一个 Builder框. 在这你可以为测试简历一个场景.10. 在 Construction 章节中, 选择有 6 个参数的构造函数.11. 右键单击,选择 Use for construction.12. 转到 Inputs 选项卡. 扩展该树,并观察哪一个值可以被作为变元传递. 如果无效的数据被传递给构造函数,则构造函数会抛出异常(参见代码). 我们需要制定一个数据,在不抛出异常的情构造出 C

42、reditCard 对象.13. balance 传递任何正值 (根据实现, 0 和负值会抛出异常).a. 在 Border Values 中检查 1 和/或 int.Max. 你可以通过用户定义的值添加一个自定义的值.14. 在 id 字段中,检查 Use user-defined 检测盒子; 右键单击并选择 Modify values. 在每一行指定值. (id 必须为正数)15. securityNumber 参数可以通过使用对象工厂方法生成仅选择工厂节点 (不选择其它选项).安全号码的字符串被设置.16. 关于 name, 输入一个用户定义的值 (如 "John White&

43、quot;,"Erica Brown"). 将每一项放入它的行中,标上引号- 行被直接到测试代码中.17. 一个有效的 zip 是一个 5 位数字序列,如"12345". 将其作为用户定义的值传递, 禁用所有其它选项.使用引号。18. 对于 cardNumber, 将"1234-1234-1234-1234" 和 "5678-5678-5678-5678" 作为用户定义的值传递,禁用所有其它值. 使用引号19. 指定对象工厂的数量,在建立器的底端的字段生成为 15.20. 转到 Assertions 选项; 为对象

44、的属性指定断言或断言.在这个选项中, Kind 列从 Record 切换到 Assert (在 Expected Value 列中指定值). 激活将会在测试第一次运行的过程中使用合适的 Test Configuration 获取的属性的值.让所有断言都被(如 Kind = Record)在此例中,.21. Settings 选项卡使你能指定目标项目. 保持默认值不变.22. 单击 Generate 按钮.23. 合适生成进程和统计.24. 打开: Dottest.Example.BankExample.DotTestFactoriesCreditCardFactory.cs 查看生成的代码.对

45、象工厂方法是公共的,静态的,少参数的,并且在之后会被测试调用.每个对象工厂方法都伴随着一个测试,使对象工厂方法有效.25. 注意测试没有断言,除非你在简历对象工厂方法时选择 Assert,项卡中 > Kind 列.在 Assertions 选练5 为对象工厂方法断言一旦新的对象工厂方法或者新的测试被生成,则断言必须被。为了断言:选 择 将 要 运 行 的 测 试 ; 在 SolutionExplorer中 加 亮 标 注Dottest.Example.BankExample.DotTestFactoriesCreditCardFactory.cs运行 Parasoft > Test

46、 Using. > Built-in > Run Tests and Update Assertions1.2.3.测试被执行,断言被标注. 失败的被NUnit.Framework.ExpectedExceptionAttribute.4.打开 Dottest.Example.BankExample.DotTestFactoriesCreditCardFactory.cs 并核实的断言.3.3.交互式测试生成一旦对象工厂可用,则他们被用于生成测试. 被对象工厂方法返回的对象可能被用于测试它们的实例方法, 或者它们可以被作为变元传递给其他方法,构造函数,或属性设置器。练6 BankE

47、xample 的交互式测试生成为了交互式生成一个测试:.建立解决方案.打开 Unit Tests Genie 视图: Parasoft > Show View > Unit Tests Genie. 单击 Symbols 树下的 Reload all Assemblies 按钮扩展 Symbols 树为 Dottest.Example.BankExample > Dottest.Example.BankExample >CreditCard. 注意这个类现在有一个绿色的指示符, 这意味着至少有一个对象工厂方法.扩展该类型, 并选择 GetCreditCar

48、dInfo() 方法.注意该方法现在有一个绿色的指示符,这意味着该方法的所有输入都由对象工厂方法生成。右键单击该方法, 选择 Generate tests for method. 该建立器与生成对象工厂方法的类似.5.6.7.打开 Inputs 选项卡.注意 creditCard 变量可以被上一个练习中生成的对象工厂方法返回的值初始化.转到 Assertions 选项卡. 保证仅 str (result from GetCreditCardInfo() call) 被选.单击 Generate 按钮.8.9.10. 查看测试被生成到: Dottest.Example.BankExample.D

49、otTestCreditCardTests.cs11. 注意这些测试没有断言, 除非你在简历对象工厂方法中选择 Assert, Assertions选项卡 > Kind 列.测试可以类似的为其它方法或属性器生成.练7 查看生成的单元测试用例查看从上个练习中生成的单元测试:1.在 Solution Explorer 中, 扩展 Dottest.Example.BankExample.DotTest 项目分支.这将会显示名称后缀为Tests 的文件.打开CreditCardTests.cs 文件.检查 dotTEST 在本文件中生成的测试用例. 所有测试那你都是 NUnit 格式. 注意以下

50、:2.3.a.b.每一个测试用例都有一组输入(赋初值),和对类中方法的调用.每一个测试有一个名为 Record State 的区域. 如果你扩张这个区域,你会看见稍后用于为测试生成断言的 API 调用. 你可以改变这些调用,或在手动编写的测试中使用相同的调用.每 个 测 试 有 一 组 自 定 义 属 性 , 如 TestCaseAutoGenerated,TestCaseUnverified 等等. 你可以在dotTEST 文档中找到这些属性的详情: Parasoft > Help > dotTEST.测试用例以 NUnit 格式生成,所以它们和其他任何测试一样,很容易被理解并修

51、改.c.d.当断言被根据 Genie时,断言区域被添加到测试.e.f.Builder 中指定的断言Diresertions 区域可能被附加。练8 为测试断言为应用程序方法的测试断言与为对象工厂方法断言完全一样 .1.选 择 要 运 行 的 测 试 ;在SolutionExplorer中 加 亮 标 注Dottest.Example.BankExample.DotTestCreditCardTests.cs运行 Parasoft > Test Using. > Built-in > Run Tests and Update Assertions2.3.测 试 被 执 行 , 断

52、 言 被NUnit.Framework.ExpectedExceptionAttribute.标记。 失 败 的 测 试 被 用4.5.6.打开 Dottest.Example.BankExample.DotTestCreditCardTests.cs 查看的断言.使用 Run Tests and Check Assertions 配置,核实没有测试失败.打开Dottest.Example.BankExampleCreditCard.cs 并找到方法 GetCreditCardInfo().在实现中有一个漏洞 (除非你在修复编码标准return creditCardInfo.ToString().的时候修复它). 修复该实现:7.8.使用 Run Tests and Check Assertions 配置以查看新建的测试如何检测改变.使用 Run Tests and Update Assertions 再次实现.断言,并更新测试,反映当前的3.4.理解符号之间的依赖关系当一个方法需要特定类型的参数,则方法和类型直接有依赖关系.为了用合理的场景测试该方法(而不是将空值作为参数传递), 类型的实例

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论