我的地盘我做主! 博客:http://tester2test.cnblogs.com/   msn:win_soft@163.com

运用LOADRUNNER .NET ADD-IN 写的性能测试脚本

上一篇 / 下一篇  2007-06-07 14:30:40 / 个人分类:其他

"FrVJ1U@3fc0using System;51Testing软件测试网 u7g%S2`3I8m;n
using System.Runtime.InteropServices; 51Testing软件测试网jg6HI/G$O*I
using System.Data.OleDb;
-gkDp7kqS h0using System.Data;

-gN5ant0m0

-U?0jZ'A Z0namespace LoadRunnerUser151Testing软件测试网pZ9M"M6cY0I3C
{
CLud0D0 ///


!o1Ia9G/vwO0 /// Summary description for VuserClass.
%jG {O H2q8\xwB e0 ///

|&J0s'RJ K#H8by z0 [ClassInterface(ClassInterfaceType.AutoDual)]51Testing软件测试网-G:Z:nN!_#{b\3t
 public class VuserClass
/Eh&l0_P.i)yq Js,s0 {
#};[o!pz(uAw5A0  LoadRunner.LrApi lr;

p2^2dJ WE.c8m0

qF.w0?Cs:u0  public VuserClass()51Testing软件测试网r K.O"a |
  {
-I5~5]*d jQ NW0   // LoadRunner Standard API Interface ::     DO NOT REMOVE!!!
C!p.a:ho*Fx/rzd0R+v0   lr = new LoadRunner.LrApi();51Testing软件测试网d1j+xlw TbDcu
   51Testing软件测试网er!z}-]
  }

%E&IhS"h%NHY?/D$e0 51Testing软件测试网!n-u]nyN%z|3V;S? \

  // ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''51Testing软件测试网w}g1Lv3U/@e
  public int Initialize()51Testing软件测试网 Um4l\[ k-lUF
  {
K5u)t[ YU pJy0   // TO DO: Add virtual user's initialization routines51Testing软件测试网@7_E:d%Ws
   lr.message("Initialize部分,我只执行一次哦!");51Testing软件测试网Z#g?C0?5E rb \-t
   return lr.PASS;
w `4I~ _v0  }

7Qm'AJ[0 51Testing软件测试网 Z\5uPv3o

  // ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''51Testing软件测试网C;xVj WX+z$cJn
  public int Actions()51Testing软件测试网*WtAx N.mv6O9X
  {51Testing软件测试网 f _rn `x6v~[0I
   // TO DO: Add virtual user's business process actions
0DN'H$FL0   lr.message("Actions部分,我可以重复执行(在设置迭代情况下)!");
0||O.HM+w+I~L&XB0   try
} \wN4I)Nq-M8\0   {
^q2dBg~EQe6D0    //设置连接字符串开始51Testing软件测试网*f"{?7S5z&}2U3[ WqIi
    string strConnection="Provider=Microsoft.Jet.OleDb.4.0;";51Testing软件测试网%t&A3MTl4g?W"VN1HJ
    strConnection+=@"Data Source=C:\\test.mdb";
M&JL*^SKj8d0    //设置连接字符串结束51Testing软件测试网7}#p E_Q

51Testing软件测试网St(dp#gO

    //插入一个集合点开始
Slpo(Kc0    lr.rendezvous("集合点");
2xF(tE,M2n0    //插入一个集合点结束

(_'`~+u:c!G RR9H R0 51Testing软件测试网 C5E:Y7zb9| G a

    //事务开始51Testing软件测试网C@+ruH0q|
    lr.start_transaction("SQL语句性能");51Testing软件测试网#i!kD1t-Zc+Q

J!u"O7M2t#X9Y0    //建立OleDbConnection和OleDbCommand,并指定要运行的Sql语句开始
3}5Q-j7Kw:aly y4X0    System.Data.OleDb.OleDbConnection  conn=new
)wM2YORt?"S%P/]i0        System.Data.OleDb.OleDbConnection(strConnection);
J||9^,X0    System.Data.OleDb.OleDbCommand cmd = new System.Data.OleDb.OleDbCommand();
IUI+B8zg~0    cmd.Connection = conn;   
.j O;a1|,f@]0    cmd.CommandText = "select * from testdb";51Testing软件测试网q wp4l e:W;i
    //建立OleDbConnection和OleDbCommand,并指定要运行的Sql语句结束51Testing软件测试网BA*~_k+U&vL

51Testing软件测试网 ^2Z9_!|P;Ka.C_t

    //插入一个日志开始51Testing软件测试网J/H8xD2E#I
    lr.log_message("LOG: Sql语句开始执行了,Sql="+cmd.CommandText);51Testing软件测试网]bK4h)G)c#j-j(H%k
    //插入一个日志结束51Testing软件测试网3M:S_!BlS2]*?

A&Tg]-@)f0    //将查询结果填充到DataTable开始
7mPy-|-_*`0    DataTable dt = new DataTable();51Testing软件测试网'F-zL7vP.C;}
    51Testing软件测试网TW W{%j\9iW2Cp
    System.Data.OleDb.OleDbDataAdapter oleDA = new
7b [j"yp`0        System.Data.OleDb.OleDbDataAdapter();51Testing软件测试网+DC~4Y0e/V#{
    oleDA.SelectCommand = cmd;
aJ;o1N kT0    oleDA.Fill(dt);51Testing软件测试网I e(J"u7c
    //将查询结果填充到DataTable结束

+vP] i}_'L}A0 51Testing软件测试网 T:Wi:lZF.E~

    //插入一个日志开始
1v5xR j4P0Q0    lr.log_message("LOG: Sql语句执行完成,Sql="+cmd.CommandText);51Testing软件测试网Z!XqT2Zw~d _}
    //插入一个日志结束51Testing软件测试网8rWwX0p2pVQ8A oZ

51Testing软件测试网T"F ~,F}

    //取得结果集的记录数51Testing软件测试网&k#~%MMG{
    int iCountRec=Convert.ToInt32(dt.Rows.Count.ToString());51Testing软件测试网;^C*J'KN
    conn.Close();//关闭连接51Testing软件测试网+m G3?N&N%N_b
    //如果记录数大于0,完整这个事务,否则标识事务失败51Testing软件测试网1\N$W rI&{(`&i
    if(iCountRec>0)51Testing软件测试网s(TY rK#gwK
     lr.end_transaction("SQL语句性能",lr.PASS);51Testing软件测试网W7nb []F`S*|
    else
4f0l*h0\v-T7E L0     lr.end_transaction("SQL语句性能",lr.FAIL);

t UXi-\+r V0 51Testing软件测试网W i;q#o0TyC

    //再来一个参数化的示例开始51Testing软件测试网.~cgdu3x0\;[
     lr.output_message("Welcome "+lr.eval_string("")+"!");51Testing软件测试网zcNU(U$l

51Testing软件测试网Jkh&bYfI

    //再来一个参数化的示例结束51Testing软件测试网)Z6M ?2p3t6`_

)~rL K*tx3`(TJ]0N0    //Thinktime 的应用,就是模拟手工操作的延时,在这里我们延时3秒钟
x-J6E"]nb;UR$H0      lr.think_time(3);
tc)Zpe'ujE0   }

r8n@9u/SMYW%iB g0

&JXc~4OL0E&R0   catch(Exception ex)51Testing软件测试网SW~ xe[ L2|
   {51Testing软件测试网0g#`m\'i#xYV
    conn.Close();//关闭连接
}.xjn9g*y/}0    string error = ex.Message;
c Vtkz-g0   }

2w.j ]8@ q5Pd0 51Testing软件测试网B|0j {f2yq.[ c

   return lr.PASS;
D:[f1zpZ|/uY*Dng0  }51Testing软件测试网 T mP(Qa&|z*r

'? AzL/ZXK4c0  // ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
T{2h!A'GK0  public int Terminate()
1?F PD0br9A.^6m+U0  {
W%d(_ xc0   // TO DO: Add virtual user's termination routines51Testing软件测试网"\7j-@\#x(l&P
   lr.message("Terminate部分,我只执行一次哦!");
ww.].q+n V0   return lr.PASS;51Testing软件测试网r|8['u Ze*H
  }51Testing软件测试网 p cX,J+y$v1LJ8v

51Testing软件测试网D3]o?Sr2T4Q a

 }
{7o7^a+o0}51Testing软件测试网H%@J#m#hr

H x;G4?n7B/f8H-q0
:qTj7FZ8h0
/fH!g'zgV1v+]].f0
测试者家园 2006-07-10 17:03 发表评论

WU bGF$cU;w051Testing软件测试网7`\ Bfu _O
Link URL: http://www.cnblogs.com/tester2test/archive/2006/07/10/447353.html

TAG:

 

评分:0

我来说两句

Open Toolbar