在Web Service协议中,可以使用LR内置的数据库连接函数lr_db_connect()来完成对各种常见数据库的连接,从而进一步通过场景并发进行数据库性能测试。
lr_db_connect()函数默认支持四种数据库连接模式:
● SQL(原生MS SQL Server)。
● OLEDB(使用 OLEDB 连接数据库)。
● ODBC。
● ORACLE。
例如我们需要完成一个对Oracle数据库的连接,则可以通过OLEDB的方式来完成,代码如下:
lr_db_connect("StepName=Connect", "ConnectionString=Provider=OraOLEDB.Oracle.1, Data Source=ORCL; Server= 127.0.0.1;Persist Security Info=True;User ID=cloudchen;Password=123456", "ConnectionName=db1", "ConnectionType=OLEDB", LAST ); |
在这里Data Source需要填写连接Oracle时需要的Net Service名称,而用户名密码需要填写在User ID和Password属性中,这里使用的连接方式是OLEDB。
而通过lr_db_executeSQLStatement()函数可以对数据库进行SQL指令执行。如果想在数据库中执行某条语句查询数据集,并且获得该返回数据集中的部分属性,对其进行响应时间分析从而获得系统数据库的性能时,我们可以这样写:
int NumRows=0; lr_start_transaction("SQL"); NumRows = lr_db_executeSQLStatement("StepName=PerformQuery", lr_end_transaction("SQL", LR_AUTO);//获得查询记录所开销的时间 lr_output_message("The query returned %d rows.", NumRows); while(i<NumRows) { lr_output_message("The value is: %s", lr_eval_string("{MyOutputParam}") ); i=i+1; lr_db_disconnect("StepName=Disconnect", |