51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 4367|回复: 14
打印 上一主题 下一主题

[原创] lr如何测试cs中的sqlserver数据库性能??

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2009-12-25 09:04:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
要测试一个系统的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 编辑 ]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2009-12-25 09:19:15 | 只看该作者
昨晚做梦都满脑子该怎样参数化这些东西,才能测试数据库的性能……
梦中都解决了,看着脚本哗啦哗啦的跑着,甭提多美了,可醒了才知道原来是做梦呢……
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2009-12-25 09:23:34 | 只看该作者
起初我想:为了避免插入相同数据违反primary key约束,在插入之前,我把数据库中已有的记录删掉,然后再插记录。然后我在controller中模拟n个人操作上传数据,修改数据库记录的工作,可是,最终觉得这不是我想要测试的。我要测试的是模拟一个人在操作大量数据上传,修改数据库记录的工作,可我不知道该通过什么来实现这种模拟
回复 支持 反对

使用道具 举报

  • TA的每日心情
    奋斗
    2015-6-25 18:04
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    4#
    发表于 2009-12-25 09:37:13 | 只看该作者
    1、你录制的这个脚本偶没看明白,是C#的LR脚本么??我没见过呢。研发给出用户登录及上传服务器和修改数据库的代码的话,你干脆做个web应用,这样使用web协议录制比较轻松。
    2、一个人操作大量数据插入数据库,和多人操作一个数据插入数据库,差距只在参数化多人登录而已,我觉得你这个场景中可以考虑忽略这个差异。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5#
    发表于 2009-12-25 12:27:56 | 只看该作者
    可以试试上传的数据量很大 然后在针对你上传的数据进行修改
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6#
    发表于 2009-12-25 12:28:33 | 只看该作者
    还有你LR录制看的是应用的协议吧 你是模拟客户端操作的不是直接测试数据库的
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    7#
     楼主| 发表于 2009-12-26 09:01:30 | 只看该作者
    我用的是Microsoft.net协议,因为用odbc协议根本录制不上脚本!
    可以试试上传的数据量很大 然后在针对你上传的数据进行修改   不明白泊崖说的这句话是什么意思?是说我用lr录制大批量数据上传,然后再对上传数据修改?还是什么???
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    8#
     楼主| 发表于 2009-12-26 09:06:15 | 只看该作者
    我用的是Microsoft.net协议,因为用odbc协议根本录制不上脚本!
    可以试试上传的数据量很大 然后在针对你上传的数据进行修改   不明白泊崖说的这句话是什么意思?是说我用lr录制大批量数据上传,然后再对上传数据修改?还是什么???
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    9#
    发表于 2009-12-26 14:06:28 | 只看该作者
    你可以自己录制你的写的SQL语句,模拟上传数据,3atesting中有关于SQL的讲座,可以去看哈
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
    发表于 2009-12-26 23:49:44 | 只看该作者
    有点懂了
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11#
     楼主| 发表于 2009-12-28 16:27:30 | 只看该作者
    谢谢9楼
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    12#
    发表于 2009-12-28 23:18:39 | 只看该作者
    别拿这种东西测数据库,这个没啥意义的,数据库有专门的压力和负载工具
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    13#
     楼主| 发表于 2009-12-29 15:07:35 | 只看该作者

    我这么参数化不对吗???

    参数化出的问题,我参数的不对吗?

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

    x
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    14#
     楼主| 发表于 2009-12-29 17:41:17 | 只看该作者
    为什么这么参数化不对呢?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    15#
    发表于 2009-12-30 09:33:26 | 只看该作者

    #12

    云层老师,你说的专门的工具是哪些啊?
    那loadrunner就你个人来说,是适合测试哪些应用呢?
    难道只是web?
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-14 20:52 , Processed in 0.076103 second(s), 29 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表