1

我们有一个使用 LightStreamer 流式传输数据的应用程序。它通过 HTTP 执行此操作。

我正在尝试使用 LoadRunner 对该应用程序进行性能测试。

我有两个 URL: URL 1 创建一个会话 ID 并保持打开状态,此 URL 将继续加载 URL 2 使用此会话 ID 发出请求。每个请求的响应都会出现在 URL1 的页面上。

我遇到的问题是,当我请求 URL 1 时,我无法在保持此请求打开的同时发出后续请求。我尝试使用 web_concurrent 包装器,但这会产生问题,因为在我可以向 URL 2 发出请求之前,我需要从 URL 返回的会话 ID。

获取 ID 不是问题,在第一个请求仍在运行时执行请求是问题。

之前有人用 LoadRunner 成功测试过 LightStreamer 吗?

这是我在网上唯一能找到的,其他人也在做同样的事情:http ://www.sqaforums.com/showflat.php?Number=685960

不幸的是,他不再与我们公司合作。我尝试在 LinkedIn 上与他联系,但运气不佳。

任何帮助将不胜感激!

4

3 回答 3

1

如果我理解您的问题,您希望测试在 11.50 版中内置于 LoadRunner 中的轮询或推送通信。我们实际上在开发和测试这个特性的过程中使用了一个 LightStreamer Demo 应用程序,它们应该在录制时被 Async 关联引擎拾取。

如果您使用的是 LoadRunner 11.5x 并且没有发生这种情况,我将有兴趣了解有关业务流程的更多信息。

肖恩·埃文斯

于 2013-03-20T22:28:02.200 回答
0

除了一个特定的部分,我都在这里。

其余如下: web_url("create_session.txt", "URL=URL", "TargetFrame=", "Resource=0", "RecContentType=text/html", "Referer=", "Snapshot=t1.inf ", "Mode=HTML", EXTRARES, "URL=URL", ENDITEM, "URL=URL", ENDITEM, "URL=URL", ENDITEM, "URL=URL", ENDITEM, "URL=URL", ENDITEM, “URL=URL”,ENDITEM,“URL=URL”,ENDITEM,最后);

如上所述,每个 EXTRARes URLS 都以 1,1,2,1,3,1,... 的格式响应,所以我使用 web_reg_find 来计算这些出现次数。

我的最后一个问题是:我使用 web_set_timeout("STEP", 60); 使 web_url 函数在 60 秒后停止,但这会导致:Action.c(20): Error -27728: Step download timeout (60 seconds) has expired [MsgId: MERR-27728]

是否可以优雅地执行此操作,因为它也将我的 Transaction 的返回设置为失败状态。

于 2013-03-21T16:10:43.160 回答
0

非常抱歉耽搁了。假期和其他因素的混合......

您的请求超时是否会影响脚本的完成能力?如果没有,您可以使用 lr_continue_on_error 函数,以及以下选项之一:

0 = LR_ON_ERROR_NO_OPTIONS
1 = LR_ON_ERROR_CONTINUE
2 = LR_ON_ERROR_SKIP_TO_NEXT_ACTION
3 = LR_ON_ERROR_SKIP_TO_NEXT_ITERATION
4 = LR_ON_ERROR_END_VUSER
于 2013-06-28T18:55:59.127 回答