lr如何测试cs中的sqlserver数据库性能??
要测试一个系统的sql server 2000数据库性能语言:c#
数据库:sql server 2000,文件服务器与数据库服务器在两台计算机上
在由一个有效用户登录后,有大批量数据要上传到文件服务器上,同时要在sqlserver 2000数据库中修改这些数据的状态,在此时测试数据库服务器的性能
该怎样做这个数据库的性能测试?
我的想法:可以由开发人员给出用户登录及上传服务器和修改数据库的代码,但是该怎样参数化,才能达到模拟大批量数据写入文件服务器,同时修改数据库中相关各表的状态呢?
我也用lr录制脚本了,录制的都是一些sql语句,起初认为可以在这上面参数化,可是却觉得无从下手,不知从哪参数化
录制的脚本大家看看
lr.log("Event 14180: new SqlCommand();");
SqlCommand_123 = new SqlCommand();
lr.log("Event 14181: SqlCommand_123.Connection = SqlConnection_26;");
SqlCommand_123.Connection = SqlConnection_26;
String value_145;
value_145 = "SELECT LayerID, MapID, StepID FROM DataState WHERE (MapID = @Map)";
lr.log("Event 14182: SqlCommand_123.CommandText = value_145;");
SqlCommand_123.CommandText = value_145;
lr.log("Event 14183: SqlCommand_123.CommandType = CommandType.Text;");
SqlCommand_123.CommandType = CommandType.Text;
lr.log("Event 14184: SqlCommand_123.Parameters;");
SqlParameterCollection_96 = SqlCommand_123.Parameters;
lr.log("Event 14185: new SqlParameter(\"@Map\", SqlDbType.Int, 4, ParameterDirection.Input," +
" byte.MinValue, byte.MinValue, \"MapID\", DataRowVersion.Current, false, null, str" +
"ing.Empty, string.Empty, string.Empty);");
SqlParameter_348 = new SqlParameter("@Map", SqlDbType.Int, 4, ParameterDirection.Input, byte.MinValue, byte.MinValue, "MapID", DataRowVersion.Current, false, null, string.Empty, string.Empty, string.Empty);
lr.log("Event 14186: SqlParameterCollection_96.Add(SqlParameter_348);");
SqlParameter_348 = SqlParameterCollection_96.Add(SqlParameter_348);
[ 本帖最后由 zhuxiaoyan003 于 2009-12-25 09:16 编辑 ] 昨晚做梦都满脑子该怎样参数化这些东西,才能测试数据库的性能……
梦中都解决了,看着脚本哗啦哗啦的跑着,甭提多美了,可醒了才知道原来是做梦呢…… 起初我想:为了避免插入相同数据违反primary key约束,在插入之前,我把数据库中已有的记录删掉,然后再插记录。然后我在controller中模拟n个人操作上传数据,修改数据库记录的工作,可是,最终觉得这不是我想要测试的。我要测试的是模拟一个人在操作大量数据上传,修改数据库记录的工作,可我不知道该通过什么来实现这种模拟 1、你录制的这个脚本偶没看明白,是C#的LR脚本么??我没见过呢。研发给出用户登录及上传服务器和修改数据库的代码的话,你干脆做个web应用,这样使用web协议录制比较轻松。
2、一个人操作大量数据插入数据库,和多人操作一个数据插入数据库,差距只在参数化多人登录而已,我觉得你这个场景中可以考虑忽略这个差异。 可以试试上传的数据量很大 然后在针对你上传的数据进行修改 还有你LR录制看的是应用的协议吧 你是模拟客户端操作的不是直接测试数据库的 我用的是Microsoft.net协议,因为用odbc协议根本录制不上脚本!
可以试试上传的数据量很大 然后在针对你上传的数据进行修改 不明白泊崖说的这句话是什么意思?是说我用lr录制大批量数据上传,然后再对上传数据修改?还是什么??? 我用的是Microsoft.net协议,因为用odbc协议根本录制不上脚本!
可以试试上传的数据量很大 然后在针对你上传的数据进行修改 不明白泊崖说的这句话是什么意思?是说我用lr录制大批量数据上传,然后再对上传数据修改?还是什么??? 你可以自己录制你的写的SQL语句,模拟上传数据,3atesting中有关于SQL的讲座,可以去看哈 有点懂了 谢谢9楼 别拿这种东西测数据库,这个没啥意义的,数据库有专门的压力和负载工具
我这么参数化不对吗???
参数化出的问题,我参数的不对吗? 为什么这么参数化不对呢?#12
云层老师,你说的专门的工具是哪些啊?那loadrunner就你个人来说,是适合测试哪些应用呢?
难道只是web?
页:
[1]