loadrunner 录制 odbc 迭代出现lrd_db_option: ERROR, return-code=LRDE2009错误

   当使用odbc协议录制完成脚本后(select查询)当迭代为1的时候正常运行,当迭代多次时开始报错:
Action.c(84): lrdb_db_option:  "SQLSetEnvAttr", return-code=-1, native-error-code=0, SQLState=HY010, SQLError=[Microsoft][ODBC 驱动程序管理器] 函数序列错误
Action.c(84): lrd_db_option: ERROR, return-code=LRDE2009

    找了半天,网上专有问题没答案,汗。。。。,害得我初次接触就找了一天问题,后来不知不觉就想明白了。

    因为录制是分为vuser_init(),action()和vuser_end()三个部分,因为迭代只对action()部分起作用,所以问题就出在action()和vuser_end()中,迭代的时候不走vuser_end(),但是action()中的对应出错行(本例中就是84行)的lrd_db_option的connection结束却在vuser_end()中,如下

   

lrd_close_connection(&Con4, 0, 0);
lrd_free_connection(
&Con4, 0 /*Unused*/, 0);
lrd_close_connection(
&Con5, 0, 0);
lrd_free_connection(
&Con5, 0 /*Unused*/, 0);
//lrd_close_connection(&Con6, 0, 0);
//lrd_free_connection(&Con6, 0 /*Unused*/, 0);
//lrd_close_connection(&Con7, 0, 0);
//lrd_free_connection(&Con7, 0 /*Unused*/, 0);

     被注释掉的部分就是属于action中的,所以要把注释掉的几行复制到action中,再次运行迭代,就一切正常了,关于Loadrunner录制odbc协议的资料太少了,无语。。。。

  

posted @ 2011-06-21 17:49  爱测试的猫咪  阅读(2163)  评论(0编辑  收藏  举报