Robot进行数据库的并发测试[2]

发表于:2010-04-23来源:作者:点击数: 标签:数据库robotRobotROBOT
Robot进行 数据库 的并发测试[2] 软件测试 GO SET ANSI_NULLS ON GO 第二步:创建 测试脚本 :在Robot中新建VU脚本,输入以下内容: #include { push Timeout_scale = 200; /* Set timeouts to 200% of maximum response time */ push Think_def = " LR "; M

  Robot进行数据库的并发测试[2]    软件测试

  GO

  SET ANSI_NULLS ON

  GO

  第二步:创建测试脚本:在Robot中新建VU脚本,输入以下内容:

  #include

  {

  push Timeout_scale = 200; /* Set timeouts to 200% of maximum response time */

  push Think_def = "LR";

  Min_tmout = 120000; /* Set minimum Timeout_val to 2 minutes */

  push Timeout_val = Min_tmout;

  ser=sqlconnect("server","sa","888","192.168.0.99","sqlserver");

  set Server_connection = ser;

  push Think_avg = 0;

  sync_point "logon";

  sqlexec ["sql_1000"] "testdb..test";

  sqldisconnect (ser);

  }

  说明:

  ser=sqlconnect("server","sa","888","192.168.0.99","sqlserver")

  sa为数据库用户名,888为sa密码,192.168.0.99数据库IP地址

  以上三项按实际的测试数据库设置更改,其他两项不用修改

  sqlexec ["sql_1000"] "testdb..test"

  testdb为新建存储过程test所在的数据库,按实际的数据库修改

  第三步:执行测试:运行上一步创建的脚本(运行时自动创建Suite),在Run Suite窗口中的“Number of users”上输入20。运行完脚本,打开数据库查看counts的数值。把counts值改为零多次运行脚本,观察每次运行后counts的结果。

  测试说明

  (1)、测试示例程序的目的是,存储过程test每执行一次,表testtable中的counts字段增加一;

  (2)、第三步的测试可以发现每次执行后counts结果并不相同,而且不等于20,这说明这个程序是在并发时是问题的。

  (3)、将存储过程中的select @count=counts from testtable where testid=1修改为select @count=counts from test

原文转自:http://www.ltesting.net