快捷搜索:

VS2010测试功能之旅:编码的UI测试(5)-常用测试

回首

在上一章先容了若何经由过程自定义编码的要领来实现自动化测试,经由过程先设计用例,然后将其转换为代码的要领写在了UIMap1.designer.cs,我们可以发明,在测试的历程中,测试的数据都是不变的,想换一组测试数据就会相称艰苦,必须得一处一处改代码,而且只支持这一条数据,若何办理这个问题呢?这便是本章先容的重点。

数据驱动的测试

为了办理方面所说的“必须得一处一处该代码,而且还只支持一条数据”的艰苦,前进测试脚本的复用性,这里引入了数据驱动测试的观点。

数据驱动测试 (Data-drive Testing)是一种在单个测试脚本应用不合的输入和相应数据重复地履行测试的技巧,这些数据滥觞于一个预定义的数据集。

我们也可以这么简单理解,DDT便是在同一个测试回放动作下由外部滥觞注入不合数据的测试。

其核心是将数据与测试脚本分离,从而可以在不改动测试脚本的环境下经由过程更新测试数据完成对测试用例的增添、变动和删除。

从设计开始

为方便起见,我们先以第一章(一个简单的示例)中提到的这个法度榜样为例:

(点此下载这个示例法度榜样,里面的RightDemo.exe是我们现在要用到的)

在第一章中我们分手录制了

InputErrorUidPwd()[输入差错的用户名和密码,点击登岸]

AssertErrorWinow()[断言“用户名密码差错”弹出框弹出]

InputRightUidPwd()[输入精确的用户名和密码,点击登岸]

AssertRightWinow()[断言“登岸成功”弹出框弹出]

这样几个操作,假如我们仔细察看,在全部测试中,一共输入了以下4类数据:

第一类:差错的用户名

第二类:差错的密码

第三类:精确的用户名

第四类:精确的密码

假如将这4类数据给自力出来,用ErrorUid,ErrorPwd,RightUid,RightPwd表示,放在专门的文件傍边(例如Excel),每一行代表一组测试数据,例如如下所示:

ErrorUid

ErrorPwd

RightUid

RightPwd

Userxx

111111

Admin

123456

UserWithOutPwd

Admin

123456

……

……

……

……

OtherErrorUid

OtherErrorPwd

OtherRightUid

OtherRightPwd

之后改动VS2010,让其从这个Excel文件中读取测试数据,一行行地遍历,然后填入被测试的法度榜样,这样就可以履行很多种不合组合,不合环境的数据,使测试面积覆盖加倍广泛。

理解这个,就已司理解DDT了,接下来仅仅是实现问题了

应用VS2010UI测试实现DDT

我们不妨先设置这两行

ErrorUid

ErrorPwd

RightUid

RightPwd

Userxx

111111

Admin

123456

UserWithOutPwd

Admin

123456

然后将其保存为.CSV款式的文件,命名为CodeUItestDemo.csv(这个在Excel中可以设置为保存为.CSV,如不明白请Google)

之后我们照样得按照第一章(一个简单的示例)中先容的要领来录制实这4个措施

InputErrorUidPwd()[输入差错的用户名和密码]

AssertErrorWinow()[断言“用户名密码差错”弹出框弹出]

InputRightUidPwd()[输入精确的用户名和密码]

AssertRightWinow()[断言“登岸成功”弹出框弹出]

录制后在CodedUITest1.cs文件下天生的调用代码如下:

1[TestMethod]

2public void CodedUITestMethod1()

3{

4this.UIMap.InputErrorUidPwd();

5this.UIMap.AssertErrorWinow();

6this.UIMap.InputRightUidPwd();

7this.UIMap.AssertRightWinow();

8}

然后在菜单中选择测试视图

之后就可以看到测试视图了,在测试视图中选择测试,然后右键点击,选择“属性”

切到具体的属性页面,如下图所示:

在这些属性中,值得留意的一共有两个

第一个是DataAccessMethod,数据造访措施,用于节制在读取数据的时刻,是随机取行,照样顺序取行,默认是Sequential,顺序取行

第二个是DataConnectionString,数据连接字符串,用于设置数据源滥觞(也便是Excel文件是什么位置)

现在对DataConnectionString进行设置,选中它,点击右边的[…],就会弹出这个数据设置领导,选择”CSV File”,点击下一步

导入我们之前的CodedUITestDemo.CSV文件,可以看到数据已经加载出来了

点击Finish,设置停止,可以看到CodedUITest1.cs文件中的调用措施自动天生了属性标签:

1[DataSource("Microsoft.VisualStudio.TestTools.DataSource.CSV", "|DataDirectory|\\CodeUItestDemo.csv", "CodeUItestDemo#csv", DataAccessMethod.Sequential), DeploymentItem("CodeUItestDemo.csv"), TestMethod]

2public void CodedUITestMethod1()

3{

4this.UIMap.InputErrorUidPwd();

5this.UIMap.AssertErrorWinow();

6this.UIMap.InputRightUidPwd();

7this.UIMap.AssertRightWinow();

8}

您可能还会对下面的文章感兴趣: