VS2010中的自动化测试(3)——数据驱动的单元测试
2011-10-08 19:14
295 查看
有时,我们会对同一条测试用例根据不同的输入数据运行多次测试。为了不重复写单元测试代码,VS允许我们的每一条单元测试函数都可以连接自己的数据源,数据源的文件格式可以是CSV、XML、SQL Server数据库或者Oracle数据库等。
下面我继续使用上次进行单元测试的函数,该函数体如下:
然后按照平常那样创建一个单元测试之后,修改测试代码如下:
现在来开始创建测试用例的数据源,我直接就用一个CSV文件就行了。打开Excel,输入数据如下,然后保存为.csv文件。
创建好数据源之后,我们重新转到测试工程,然后打开Test View或者Test List Editor窗口,选中我们要连接数据源的测试用例,右键属性,然后点击Data Connection String属性,它会弹出一个连接向导,选择CSV文件,然后选择刚刚保存的csv文件。选择完成之后,该测试用例的属性如下图所示:
然后会注意到我们之前的测试函数上多加了几个Attribute。现在我们重新修改一下单元测试代码:
最后我们运行一下这个测试用例,结果如下所示,我们可以看到在它的运行结果里面还有每一行数据的运行结果,如果其中有一行数据Fail,那我们的整体结果就是Fail的。我们双击其中一行的结果还能进一步查看它运行的详情。
[b]相关文章:[/b]
VS2010中的自动化测试(5)——Web性能测试(2)
VS2010中的自动化测试(4)——Web性能测试(1)
VS2010中的自动化测试(2)——单元测试
VS2010中的自动化测试(1)——VS2010中的测试管理工具
下面我继续使用上次进行单元测试的函数,该函数体如下:
public double CalculateTotalPrice(double quantity) { double totalPrice; double unitPrice; unitPrice = 16.0; totalPrice = unitPrice * quantity; return totalPrice; }
然后按照平常那样创建一个单元测试之后,修改测试代码如下:
[TestMethod()] public void CalculateTotalPriceTest() { Class1 target = new Class1(); double quantity = 10F; double expected = 160F; double actual; actual = target.CalculateTotalPrice(quantity); Assert.AreEqual(expected, actual); }
现在来开始创建测试用例的数据源,我直接就用一个CSV文件就行了。打开Excel,输入数据如下,然后保存为.csv文件。
创建好数据源之后,我们重新转到测试工程,然后打开Test View或者Test List Editor窗口,选中我们要连接数据源的测试用例,右键属性,然后点击Data Connection String属性,它会弹出一个连接向导,选择CSV文件,然后选择刚刚保存的csv文件。选择完成之后,该测试用例的属性如下图所示:
然后会注意到我们之前的测试函数上多加了几个Attribute。现在我们重新修改一下单元测试代码:
[DataSource("Microsoft.VisualStudio.TestTools.DataSource.CSV", "|DataDirectory|\\test.csv", "test#csv", DataAccessMethod.Sequential), DeploymentItem("TestProject1\\test.csv"), TestMethod()] public void CalculateTotalPriceTest() { Class1 target = new Class1(); double quantity = Convert.ToDouble (this.testContextInstance.DataRow["Quantity"]); double expected = Convert.ToDouble (this.testContextInstance.DataRow["ExpectedPrice"]); double actual; actual = target.CalculateTotalPrice(quantity); Assert.AreEqual(expected, actual); }
最后我们运行一下这个测试用例,结果如下所示,我们可以看到在它的运行结果里面还有每一行数据的运行结果,如果其中有一行数据Fail,那我们的整体结果就是Fail的。我们双击其中一行的结果还能进一步查看它运行的详情。
[b]相关文章:[/b]
VS2010中的自动化测试(5)——Web性能测试(2)
VS2010中的自动化测试(4)——Web性能测试(1)
VS2010中的自动化测试(2)——单元测试
VS2010中的自动化测试(1)——VS2010中的测试管理工具
相关文章推荐
- VS2010中的自动化测试(3)——数据驱动的单元测试
- VS2010中的自动化测试(3)——数据驱动的单元测试
- 单元测试、自动化测试、接口测试过程中的Excel数据驱动(java实现)
- VS2010中的自动化测试(3)——数据驱动的单元测试
- VS2010测试功能之旅:编码的UI测试(5)-常用测试要点和函数:使用数据驱动的测试
- 数据驱动的单元测试--单元测试适配器引发异常
- 教你一招:基于数据驱动的接口单元测试
- 使用vs2010的Coded UI Test实现数据驱动的用户自动登录测试
- [导入]数据驱动的单元测试
- 基于数据驱动的接口自动化测试解决方案
- 自动化测试里的数据驱动和关键字驱动思路的理解
- VS2010中的自动化测试(2)——单元测试
- 自动化测试里的数据驱动和关键字驱动思路的理解
- ABP中单元测试的技巧:Mock和数据驱动
- 用gtest实现数据驱动的单元测试
- 通过VSTS使用Excel表格进行数据驱动的单元测试
- VSTS中数据驱动的单元测试
- 基于testNG框架的分层式数据驱动自动化测试设计与研发(一)
- VS2010 学习笔记 WF4 (5) 加入单元测试,实现测试驱动开发(TDD)
- VS2010中的自动化测试(2)——单元测试