创建MS-SQL类型的TD工程:实验及结论

作者:snowers

【摘要】TestDirector是美国MI公司推出的一款功能强大的测试管理工具,在软件测试行业得到了广泛的使用。不少朋友在使用TestDirector的过程中,也遇到了一些问题。除了广遭诟病的RPC错误外,另外一个问的比较多的问题就是“为什么不能成功创建MS-SQL类型的工程?”。

关于第二个问题,在两个比较热门的测试交流网站,“测试时代(www.testage.net)”和“51Testing软件测试网(www.51testing.com)”的测试论坛上讨论了不少的解决思路。在这里,我将以实验的方式给出一个经得起实践检验的简易的操作方法。限于篇幅关系,实验的过程已经经过技术上的简化处理。

【关键词】TestDirector 数据库 MS-SQL

  • 前言

在开始本实验之前,必须明确一个基本要求,即:欲创建MS-SQL类型的工程,必先创建有效的MS SQL Server数据库服务(DB Server)。因此讨论的焦点将转到如何创建有效的DB Server上。作者假设您已经对在TestDirector后台创建DB Server和Project基本操作很熟悉。

本次实验将解答三个方面的疑问:

  • 创建DB Server必须要在TestDirector服务器上安装配置SQL Server客户端吗?
  • DB Server必须与TestDirector部署在同一台服务器上吗?
  • 如何配置SQL Server客户端参数?配置SQL Server客户端有什么用处?
  • 实验环境

本次实验使用了局域网内三台台式机,机器配置属性如下表:

机器名

IP地址

硬件信息

软件信息

备注

TDServer

192.168.0.1

PIV2.4G/512M/60G

Win2KSer

TestDirector7.6EN

TD服务器

TestServer

192.168.0.2

PIV2.4G/256M/60G

Win2KPro

SQL Server2K开发版,实例名默认

数据库服务器1

DevServer

192.168.0.3

PIV2.4G/256M/60G

WinXP

SQL Server2K开发版,实例名Dev

数据库服务器2

表1 实验环境信息

说明:上述环境中所提到的SQL Server2K,是以默认方式安装了客户端和服务器端,身份验证方式为“混合方式”,sa的口令均为sa。关于TestDirector7.6企业版和SQL Server2000开发版的安装过程,此处略去。

疑问1:创建DB Server必须要在TestDirector服务器上安装和配置SQL Server客户端吗?

为了解答心中的疑问,我在安装TestDirector了的机器上未安装SQL Server2000开发版。

这次我们选择TestServer作为DB Server。

打开浏览器,输入http://tdserver/tdbin/SiteAdmin.htm,回车,输入口令后进入到TestDirector的后台。选择DB Server页。点击New 按钮,添加一个新的DB Server。如图1:

图1

Ping一下,OK,通了!将上面的Server Alias 改为192.168.0.2,效果一样。

一般来说,只要这里所建的DB Server可以ping通的话,那么创建MS-SQL类型的Project是没问题的。真的是这样吗?让我们来试一下。

选择Projects页,点击Creat按钮,打开“Creat Project”对话框,输入如下信息:

图2

点击Next按钮,服务名字选择TestServer:

图3

点击Next按钮,按照提示操作,成功创建了MS-SQL类型的TD工程FromTestServer。

结论1只要网内其他机器上安装了SQL Server2000服务程序,就能成功创建MS-SQL类型的DB Server,进而可成功创建MS-SQL类型的Project。也就是说,TestDirector服务器上不需要安装配置SQL Server客户端。

结论2TestDirector服务不必与DB Server部署到同一台机器上(回答了前面所提到的第二个疑问)。

实验进行到此,有人可能会问,同样的,可以用DevServer创建有效的MS-SQL类型的DB Server吗?

让我们来试一下,看是不是如我们所想。

如前所述,添加一个新的DB Server,如图4:

图4

Ping一下——咦,奇怪哎,怎么ping不通了?!

让我们来看一看这个SQL Server与上一个SQL Server有什么不一样(参见“表1 实验环境信息”)。噢,这个SQL Server的实例名不是默认的,而是安装时指定的!那么在创建DB Server的时候,服务别名(Server Alias)应该输入什么呢?

经过多次实验,这里的服务别名应该为“DevServer\Dev”,即:服务器名\实例名。

服务别名输入“DevServer\Dev”,可以ping通。至此,使用带实例名的SQL Server成功创建DB Server。

我们还有最后一个疑问:如何配置SQL Server客户端参数?配置SQL Server客户端有什么用处呢?

对于这个问题,也是大家争论最多的地方。有的人按照TestDirector的安装手册中的说明,成功创建了MS-SQL类型的Project;有的人使用同样的配置参数,却失败了。为什么呢?

我们先来看一看TestDirector的安装手册中是如何说明的:

首先要在TestDierctor服务器上安装SQL Server客户端程序(废话#%£);

其次,配置客户端参数:

To configure the Microsoft SQL Server 2000 client:

  • Choose Start > Programs > Microsoft SQL Server > Client Network Utility. The Server Client Network Utility dialog box opens.
  • Click the Alias tab.
  • Click Add. The Add Network Library Configuration dialog box opens.
  • In the Server alias box, type TDSQLSERVER.
  • In the File Name box, type the protocol name, as configured in the Microsoft SQL Server. For example: Named Pipes.
  • In the Parameters box, type the Microsoft SQL Server name.
  • Click OK to close the Add Network Library Configuration dialog box.
  • Click OK.

按照上面的提示,我在TD服务器上安装了SQL Server客户端,但并没有成功创建DB Server。经过多次分析和实验,我仍没有找到问题的答案(怀疑有人成功只是碰巧满足了某些条件——有运气的成分,嘻嘻),但找到了有效的解决方案。

主要过程如下:

第一步、在TDServer上安装SQL Server客户端程序;

第二步、打开客户端工具,点击Alias页,如图5:

图5

第三步、点击Add按钮,并选择“TCP/IP”;

这里又要分两种情况:

  • 对于未指定SQL Server实例名的机器TestServer,配置参数如下:

图6

  • 对于指定了SQL Server实例名的机器DevServer,配置参数如下:

图7

第四步、进入TestDirector的后台管理,新建2个DB Server,服务别名分别为上面的“Test”和“Development”,成功创建DB Server。继而使用相应的DB Server成功创建了MS-SQL类型的Project。

呵呵,结论出来了(好像仓促了点):

结论3对于未指定实例名的SQL Server服务器,在配置TD服务器上的SQL客户端参数时,“Server name”输入SQL Server服务器的机器名或IP即可。

结论4对于指定了实例名的SQL Server服务器,在配置TD服务器上的SQL客户端参数时,“Server name”输入SQL Server服务器的“机器名(或IP)\实例名”。

结论5在TestDirector服务器上配置不同的SQL客户端参数,可以帮助TD管理员区分不同的DB Server,例如测试部门可能会有专用的数据服务器,开发部门也希望用自己专用的数据服务器,那么在SQL客户端指定容易识别的服务别名就显示出其好处了:TD管理员在创建MS-SQL类型工程的时候,就可以在根据需要选择使用测试部门的数据服务器或者开发部门的数据服务器。

  • 操作建议

本文不准备就“如何创建MS-SQL类型的TD工程”给出什么所谓的“最佳实践”,作者只想给那些急于解决类似问题的TD使用者提供一个思路。作者给出如下一些操作建议:

  • 尽量将TestDirector服务和SQL Server数据库服务部署在同一台机器上;
  • 安装SQL Server服务(包括客户端和服务器端)时,建议使用默认的实例名,这样在TestDirector的后台创建DB Server时,可以省去不少麻烦;
  • 如果SQL Server的实例名是默认的,则在TestDirector的后台创建DB Server时,“Server Alias”的内容为安装SQL Server的机器的名字或IP;
  • 如果如果SQL Server的实例名是指定的,则在TestDirector的后台创建DB Server时,“Server Alias”的内容为安装SQL Server的机器的名字(或IP)\实例名;
  • 除非很需要,否则没有必要在TestDirector服务器上安装SQL客户端程序;如需配置SQL客户端参数,请参见“结论3”和“结论4”的内容。
  • 文中所说的方法同时适用于TD7.6和最新的TD8.0。

由于作者使用TestDirector的时间也不过1年,所以文中的观点可能是浅薄甚或是错误的。如果对本文所描述的方法您还有不明白的地方,或者您认为文中描述的方法有错误之处,或者您愿意和作者进一步讨论关于TestDirector的使用技巧,请联系我:

Email:snowers@sina.comQQ:6440520