51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1796|回复: 8
打印 上一主题 下一主题

[原创] 这样做并发测试能行吗?(希望大家能帮忙.在此小弟非常感谢)在线等大家的帮忙?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2010-1-15 10:17:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
应用程序说明:   .Net2.0, MySQL的数据库.

测试要求:两个客户端(连接到同一个MySql数据库)能同时做一个添加food的功能,如下图:

(说明:查看开发代码.添加这一条记录的主键值是从另一个表中读取出来的.从为添加当前记录主键的值.当添加成功后.再把主键表中的值向前加1.例:当前主键表中的值是10000,当点击OK按钮后.从主键表中知到这一条记录的主键值为10000,然后在food表中添加主键值为10000的记录,再把主键表的值更新为10001).
测试方法:  通过LR的.NET插件.代码如下:
          public class VuserClass
    {
        LoadRunner.LrApi lr;
        public VuserClass()
        {
            lr = new LoadRunner.LrApi();
        }

        public int Initialize()
        {
            return lr.PASS;
        }

        public int Actions()
        {
            FoodManagement foodManagement = new FoodManagement();

            //添加foodmenu的操作.
            //1.从主键表中得到当前的主键信息.
            long FoodNo;

            FoodNo = foodManagement.GetTableNo("t_foodmenu");
            lr.think_time(3);
            //下面是向添加Foodmenu的方法.
//插入集合点
           // lr.rendezvous("添加foodmenu");
            lr.start_transaction("T_AddFoodmenu");
            byte[] imageByte=null;
foodManagement.AddFoodMenu(FoodNo,1000003,"kotei01","bread","面包",float.Parse("1.2"),float.Parse("1.3"),float.Parse("1.4"),float.Parse("1.5"),float.Parse("1.6"),(int)FoodNo,"Yes","Yes",imageByte);
            lr.end_transaction("T_AddFoodmenu", lr.AUTO);
             return lr.PASS;
        }

        public int Terminate()
        {
            // TO DO: Add virtual user's termination routines
            return lr.PASS;

        }

    }
当在场景中时,只能成功一个VU.其它的失败.

这样是否说明这个并发是不成功的呢?这样的测试方法是否正确.还有其它测试方法.

[ 本帖最后由 jadeyu712 于 2010-1-15 10:28 编辑 ]

本帖子中包含更多资源

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

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2010-1-15 10:34:36 | 只看该作者
有12个看了.一句安慰的话也没有?哎!
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2010-1-15 10:47:37 | 只看该作者
看到.net的用Loadrunner做性能测试就头晕,用vsts自带的不好么。。。
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2010-1-15 11:13:30 | 只看该作者
现在还不会编码实现性能测试,都是用录制的 ,帮你顶
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2010-1-15 13:35:44 | 只看该作者
是不是从主键表锁造成的?
回复 支持 反对

使用道具 举报

该用户从未签到

6#
 楼主| 发表于 2010-1-15 14:52:08 | 只看该作者

回复 5# 的帖子

什么意思?
能详细说明一下吗?
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2010-1-15 18:07:22 | 只看该作者
还是不行呀!
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2010-1-16 09:46:36 | 只看该作者
我很想跟你探讨这个问题,于是认真看了你写的问题描述,但感觉看后仍然很糊涂,不是很明白楼主的意思,希望楼主能踏下心来,仔细的描述一下问题,别有错别字啊。
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2010-1-18 09:38:37 | 只看该作者

回复 6# 的帖子

http://blog.csdn.net/zmhdgut/archive/2008/07/24/2705812.aspx
这篇文章是介绍表锁的,表锁针对 多个用户同时对数据库的并发操作时造成数据不一致的问题.
你参考一下,对你的测试可能有帮助.
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-23 08:35 , Processed in 0.078713 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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