"FrVJ1U@3fc0using System;51Testing软件测试网u7g%S2`3I8m;n
using System.Runtime.InteropServices; 51Testing软件测试网jg6HI/G$O*I
using System.Data.OleDb;
-gkDp7kqSh0using System.Data;
-gN5ant0m0
-U?0jZ'AZ0namespace LoadRunnerUser151Testing软件测试网pZ9M"M6cY0I3C
{
C Lud0D0 ///
!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]*djQ NW0 // LoadRunner Standard API Interface :: DO NOT REMOVE!!!
C!p.a:ho*Fx/r zd0R+v0 lr = new LoadRunner.LrApi();51Testing软件测试网d1j+xlwTbDcu
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[YUpJy0 // TO DO: Add virtual user's initialization routines51Testing软件测试网@7_E:d%Ws
lr.message("Initialize部分,我只执行一次哦!");51Testing软件测试网Z#g?C0?5Erb\-t
return lr.PASS;
w `4I~ _v0 }
7Qm'AJ[0
51Testing软件测试网
Z\5uPv3o // ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''51Testing软件测试网C;xVjWX+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"VN1H J
strConnection+=@"Data Source=C:\\test.mdb";
M&JL*^SKj8d0 //设置连接字符串结束51Testing软件测试网7}#pE_Q
51Testing软件测试网St(dp#gO //插入一个集合点开始
Slpo(K c0 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;
.jO;a1|,f @]0 cmd.CommandText = "select * from testdb";51Testing软件测试网qwp4l 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;o1NkT0 oleDA.Fill(dt);51Testing软件测试网Ie(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-T7EL0 lr.end_transaction("SQL语句性能",lr.FAIL);
t
UXi-\+rV0
51Testing软件测试网Wi;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
m P(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?S r2T4Qa }
{7o7^a+o0}51Testing软件测试网H%@J#m#hr
Hx;G4?n7B/f8H-q0
:qTj7FZ8h0/fH!g'zgV1v+]].f0
WU bGF$cU;w051Testing软件测试网7`\ Bfu_OLink URL:
http://www.cnblogs.com/tester2test/archive/2006/07/10/447353.html