使用LR测试Oracle数据库的方法
使用LR测试Oracle数据库的方法一个简单的连接方法,欢迎大家跟贴讨论更多方法
详细脚本见附件
选择,建立一个Oracle(2-Tier)协议的脚本
加入
static LRD_INIT_INFO InitInfo = {LRD_INIT_INFO_EYECAT};
static LRD_DEFAULT_DB_VERSION DBTypeVersion[] =
{
{LRD_DBTYPE_NONE, LRD_DBVERSION_NONE}
};
先定义初始化数据库的各种变量
static void FAR * OraEnv1;
static void FAR * OraSvc1;
static void FAR * OraSrv1;
static void FAR * OraSes1;
static void FAR * OraStm1;
unsigned long rownum;
初始化数据库部分
lrd_init(&InitInfo, DBTypeVersion);
lrd_initialize_db(LRD_DBTYPE_ORACLE, 3, 0);
lrd_env_init(LRD_DBTYPE_ORACLE, &OraEnv1, 0, 0);
lrd_ora8_handle_alloc(OraEnv1, SVCCTX, &OraSvc1, 0);
lrd_ora8_handle_alloc(OraEnv1, SERVER, &OraSrv1, 0);
lrd_ora8_handle_alloc(OraEnv1, SESSION, &OraSes1, 0);
连接数据库
lrd_server_attach(OraSrv1, "这里填写数据库的名称", -1, 0, 0);
lrd_ora8_attr_set_from_handle(OraSvc1, SERVER, OraSrv1, 0, 0);
设定数据库密码
lrd_ora8_attr_set(OraSes1, USERNAME, "system", -1, 0);
lrd_ora8_attr_set(OraSes1, PASSWORD, "这里填写密码", -1, 0);
初始化连接session
lrd_ora8_attr_set_from_handle(OraSvc1, SESSION, OraSes1, 0, 0);
开始连接数据库
lrd_session_begin(OraSvc1, OraSes1, 1, 0, 0);
lrd_ora8_handle_alloc(OraEnv1, STMT, &OraStm1, 0);
设定查询语句
lrd_ora8_stmt(OraStm1, "这里填写查询语句", 1, 0, 0);
执行查询语句
lrd_ora8_exec(OraSvc1, OraStm1, 0, 0,&rownum, 0, 0, 0, 0, 1);
释放连接数据库的各种变量
lrd_handle_free(&OraStm1, 0);
lrd_session_end(OraSvc1, OraSes1, 0, 0);
lrd_server_detach(OraSrv1, 0, 0);
lrd_handle_free(&OraEnv1, 0);
[ 本帖最后由 cedar 于 2007-7-27 18:50 编辑 ] 确实不错 有点深奥,顶一个。 前段时间一直弄这这个东西,现在可以参考了,谢谢楼主共享:) 感动啊 ,希望以后多共享一下脚本.最好出教程拉,哈哈 呵呵。其实不需要这么麻烦。
如果你是用Oracle(2-Tier)协议的话,可以通过各种执行Oracle的SQL脚本的工具来直接录制。它会自动生成很多文件,比如:
pre_cci.c
vdf.h
*.rdf
*.grd
print.inl
你脚本中定义的所有static,其实都自动保存在vdf.h文件中;另外如果你要使用到数据库中表的某些字段,它也会自动保存到*.grd和*.rdf文件中。
但是,当初我发现如果我使用ODBC协议的话,我根本录制不到任何内容,所以才手写脚本,把vdf.h文件中的定义内容全部写在了脚本里。我发现这样也是可以运行的,而且还发现居然效率更高。 不错的信息。欢迎大家一起来讨论。
请教一问题
请教一下,在对数据库进行测试的时候,比如模拟200个用户对数据库施压,在数据库中会添加实际数据吗。他实现的原理是什么?谢谢!请教loadrunner 实现压力测试的原理?
在对数据库测试的过程中,模拟的数据会在数据库中实际添加吗?如果不能,他怎么对数据库的性能指标实施测试?请教各位大侠!!! 对数据进行的操作是实际操作,如果是插入语句的话,会向数据库里添加数据的。
由此来测试数据库的性能指标。 好.简单明了,学习的好帮手.
不错
不错是不错!问题是我写在那啊?怎么弄啊?可否做个视屏给大家看看啊? 我想问一下,这个脚本要自己写吗 ?不是录制的吗? 正要学习这方面知识,谢谢搂主! 通过录制也可以有类似的脚本,但无用的语句过多,简单的测试可以直接引用上面的语句。 谢谢,收藏 原帖由 jackloo 于 2006-12-4 16:41 发表呵呵。其实不需要这么麻烦。
如果你是用Oracle(2-Tier)协议的话,可以通过各种执行Oracle的SQL脚本的工具来直接录制。它会自动生成很多文件,比如:
pre_cci.c
vdf.h
*.rdf
*.grd
print.inl
你脚本中定义 ...
如何录制的?sdlkfj1 安装Oracle后选择一个可以访问数据库的程序,开始录制。 不是很明白...... 试试就清楚了。sdlkfj2