使用LoadRunner / Performance Center测试Web服务

时间:2015-11-01 11:24:07

标签: c web-services soap performance-testing loadrunner

我在 Action.C 操作()中有以下代码。如图所示,我已在用户注册中参数化了用户名。我将parameter type保留为Iteration Number,将text format保留为user%d(例如,user1等)。在runtime settings中,我将number of iterations保留为500.当我从vusergenerator本地运行它时工作正常,它会创建500个用户(user1,user2等),然后停止。但是当我通过选择30个vuser和2个负载生成器从性能中心运行它时,脚本行为不当。就像它一直运行,直到我手动停止运行并且它一直给我错误,就像它试图创建应用程序中不允许的相同用户一样,因此应用程序抛出用户已经存在的错误。 有人可以指导我如何解决此问题吗?理想情况下,所有30个vuser(线程)都应该全局采用迭代编号,不是吗?这样每个线程就会创建唯一的用户,直到500次迭代。

Action()
{
    web_service_call("StepName=registerUser_91",
        "SOAPMethod=ComRegisterSvc|ComRegisterSvcBinding|registerUser",
        "ResponseParam=response",
        "Service=ComRegisterSvc",
        "URL=http://company.com/registersvc
        "ExpectedResponse=SoapResult",
        "Snapshot=t1446039143.inf",
        BEGIN_ARGUMENTS,
        "xml:userContextDetails="
            "<userContextDetails>"
                "<userNameId>"
                    "<userName>{DynamicUser}</userName>"
                "</userNameId>"
                 "<firstName>{DynamicUser}</firstName>"
                 "<lastName>{DynamicUser}</lastName>"
            "</userContextDetails>",
        END_ARGUMENTS,
        BEGIN_RESULT,
        END_RESULT,
        LAST);

    return 0;
}

1 个答案:

答案 0 :(得分:1)

迭代次数仅对每个VUser都是唯一的。在您的情况下,您运行的是30个用户,显然迭代次数将会重复。

您可以将参数类型用作&#34;唯一编号&#34;解决重复。