在vs2010中创建并运行单元测试

上传人:kms****20 文档编号:46654931 上传时间:2018-06-27 格式:PDF 页数:9 大小:154.39KB
返回 下载 相关 举报
在vs2010中创建并运行单元测试_第1页
第1页 / 共9页
在vs2010中创建并运行单元测试_第2页
第2页 / 共9页
在vs2010中创建并运行单元测试_第3页
第3页 / 共9页
在vs2010中创建并运行单元测试_第4页
第4页 / 共9页
在vs2010中创建并运行单元测试_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《在vs2010中创建并运行单元测试》由会员分享,可在线阅读,更多相关《在vs2010中创建并运行单元测试(9页珍藏版)》请在金锄头文库上搜索。

1、演练:在演练:在 VS2010 中创建并运行单元测试中创建并运行单元测试 摘自 MSDN,略作整理 目录目录 概述 . 1 系统必备 . 2 演练 . 3 准备演练 . 3 创建单元测试 . 4 创建单元测试创建单元测试 . 4 运行和自定义单元测试. 5 运行和自定义单元测试运行和自定义单元测试 . 5 运行单元测试并修复代码. 6 运行单元测试并修复代码运行单元测试并修复代码 . 6 为私有方法创建和运行单元测试 . 6 为私有方法创建和运行单元测试为私有方法创建和运行单元测试 . 6 运行测试并查看代码覆盖率. 7 运行测试并查看代码覆盖率运行测试并查看代码覆盖率 . 7 概述概述 本演

2、练将逐步指导您使用 Microsoft Visual Studio 2010 来创建、运行和自定义一系列测试。 您将从正处于开发过程中的 C# 项目开始,创建执行该项目代码的测试,运行测试并检查 结果。然后,可以更改项目代码并重新运行测试。 在本演练中,您将完成以下任务: 准备一个要在演练中使用的“银行帐户”( Woodgrove Bank)项目。 打开一个现有项目。 为公共和私有方法创建单元测试。 对代码运行这些测试。 在测试中查找错误并进行更正。 在代码中查找错误并进行更正。 系统必备系统必备 Woodgrove Bank 项目,由简单程序的代码组成。然后可以生成测试 Woodgrove

3、Bank 程序各种方法(公共和私有方法)的单元测试。 using System; namespace BankAccountNS / / Bank Account demo class./ public class BankAccount private string m_customerName; private double m_balance; private bool m_frozen = false; private BankAccount() public BankAccount(string customerName, double balance) m_customerName

4、 = customerName; m_balance = balance; public string CustomerName get return m_customerName; public double Balance get return m_balance; public void Debit(double amount) if (m_frozen) throw new Exception(“Account frozen“); if (amount m_balance) throw new ArgumentOutOfRangeException(“amount“); if (amo

5、unt 和实际值 之间的差不应大于 ”。这些数字似乎表 明数学运算不正确。由于 “BankAccountTest”类的 “DebitTest”方法测试 “BankAccount”类的 “Debit”方法,所以从检查 “Debit”方法开始。 3. 打开 Class1.cs 文件并滚动到 “Debit”方法。 4. 请注意以下赋值: m_balance += amount; 此赋值向余额增加金额,在 “Debit”方法中,应当减去赋值。 将此行更改为: m_balance -= amount; 5. 再次运行 “Debit”测试。 在“测试结果”窗口的 “结果结果”列中,将为 “DebitTes

6、t”显示 “已通过已通过”。 说明说明 更改源代码后不必重新生成测试项目,因为运行测试时会生成项目而不进行提示。 您创建了一个可以运行的单元测试,并通过它查找和修复了代码中的错误。 为私有方法创建和运行单元测试为私有方法创建和运行单元测试 为私有方法创建和运行单元测试为私有方法创建和运行单元测试 1. 打开 Bank 项目中的 Class1.cs 文件。 2. 右击 “FreezeAccount()”方法,然后选择 “创建单元测试创建单元测试”。 随即出现 “创建单元测试创建单元测试”对话框。 在显示的树结构中,只有 “FreezeAccount()”方法处于选定状态。 3. (可选)单击 “

7、筛选器筛选器”,然后清除 “显示非公共项显示非公共项”。 注意, “FreezeAccount()” 方法已从 BankAccount 类的子方法列表中移除。 再次单击 “筛选器筛选器”,然后选择 “显示非公共项显示非公共项”以重新显示 “FreezeAccount()”方法。 4. 确保 “FreezeAccount()”方法处于选中状态,然后单击 “确定确定”。 此时将新建一个名为 Bank.accessor 的专用访问器文件。该文件中包含特殊的访问 器方法,测试使用这些方法间接调用 BankAccount 类中的私有方法。在解决方案 资源管理器的“测试引用”文件夹中可以看到这个新文件。

8、5. 打开 BankAccountTest.cs 文件并滚动到 “FreezeAccountTest()”方法。 6. 更改 “FreezeAccountTest()”方法的代码, 使其与下面所示的代码一致。 更改过的 区域或新区域有相应的指示: public void FreezeAccountTest() BankAccount_Accessor target = new BankAccount_Accessor(“Mr.Bryan Walton“, 11.99); / TODO: Initialize to an appropriate value target.FreezeAccoun

9、t(); / Assert.Inconclusive(“A method that does not return a value cannot be verified.“); bool creditAccount = false; / False means account could be credited: Fail test. / Try to credit account try target.Credit(1.00); cat ch (System.Exception) / Threw exception.FreezeAccount worked correctly: Pass t

10、est. creditAccount = true; / Assert fails if creditAccount condition is false.Fail test. Assert.IsTrue(creditAccount, “Was able to credit account.“); 7. 运行 “FreezeAccountTest”测试。 在“测试结果”窗口的 “结果结果”列中,最终测试状态显示为 “已通过已通过”。 该结果与预期 结果一致,原因是测试在调用 “FreezeAccount()”方法冻结帐户之后调用了 “Credit()”方法。 您已经添加了一个私有方法,为其创建了新的单元测试并运行了该测试。可以对 balance 变量使用其他边界值(如 15.00)来多次运行该测试。 运行测试并查看代码覆盖率运行测试并查看代码覆盖率 对程序集中的代码运行测试时, 可以通过收集代码覆盖率数据来查看正在测试的项目代码部 分。 运行测试并查看代码覆盖率运行测试并查看代码覆盖率 1. 请注意“解决方案资源管理器”中的解决方案的名称。如果使用上述中的项目,则解决方案的名称为 Bank。 此解决方案包含测试代码。 2. 在“解决方案资源管理器”的“解决方案项”下,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号