标题: 录制脚本的一个问题 [打印本页] 作者: Diablo 时间: 2006-10-15 11:33 标题: 录制脚本的一个问题 在录制一个跟数据库有关的应用软件的测试脚本时,loadrunner会把所有从数据库中读取的数据记录下来,就是这个函数:lrd_fetchx。由于数据量很大,所以导致在脚本还没有录制完的时候,就会提示out of memory。
请问有人知道怎么解决这个问题?能不能让loadrunner不记录这些数据呢?这些数据对测试来说一点用都没有作者: xingcyx 时间: 2006-10-15 12:33
如果你确定这些数据在后续的脚本中无需用到的话,可以在录制的过程中,到了读取数据这一步的时候,点暂停按钮,等它读取完以后再继续录制。
不过建议你还是要多加分析,因为如果该应用软件要下载这么多无用的数据到客户端,那么可能在这个地方会导致一些性能上的问题,你可以多加关注。作者: Diablo 时间: 2006-10-15 14:14
怎么说呢....所有的数据处理全部在客户端完成,服务器只是提供了数据存储的地方而已。软件是用VFP写的,实际上的测试就是软件读写数据库的操作,但是我并不关心读出和写入的数据究竟是什么,我只关心读写的动作对数据库服务器的影响而已.....所以到了读写数据的时候,肯定不能暂停的,否则就不用测了…………作者: xingcyx 时间: 2006-10-15 14:26
读写动作对数据库服务器的影响?
这个操作本身就是和数据量的大小有关的吧?
大数据量和小数据量对服务器的影响肯定是不同的。作者: Diablo 时间: 2006-10-15 14:34
是的,但是我并不需要对这些数据进行处理,所以读完就可以丢掉了...问题就在loadrunner在录制脚本的时候,会把所有读出来的数据全部保存下来....比如,软件执行了10条select语句,第一条执行完以后,执行第2条select时,第一条select筛选出来的数据已经没有用了,我并不会去处理这些数据,完全可以丢弃....但是loadrunner会保留下来…………这样在多次对数据库进行读操作以后,保留的数据占用了大量的内存空间,导致脚本无法继续录制......作者: Diablo 时间: 2006-10-15 14:48
我看了lrd_fetchx这个函数在头文件里面的说明,里面有个参数是这么说的:
mpfjPrintRow A pointer to a function for printing each fetched row, or NULL if printing not required. Note: The function is not called when "Data returned by server" is not selected in "Extended logging" of "Run-time settings".