【问题标题】:Anyone have a successful WCAT load test scenario using NTLM authentication?任何人都有使用 NTLM 身份验证的成功 WCAT 负载测试场景吗?
【发布时间】:2009-02-09 22:01:10
【问题描述】:

该文档提供了一个简洁的示例,并且看起来它无论如何都缺少一个跃点/对。当我设置一个脚本来访问远程服务器并类似地对我的 NTLM 通信进行模式设置时,我得到以下输出:
...
所有客户端已连接,测试开始。
收到无效代码。
接受远程连接时出错。
消息:检测到运行错误,正在终止客户端...
消息:终止 wcclient 的所有实例...
连接到:
...

当我注释掉 3 个 NTLM 中心线时,我的场景运行良好。当它们未注释时,它会失败。 WCAT 客户端能够解析场景,但我还没有真正深入研究解析机制,看它是否正确解析。

(我已经修复了阻止从多个远程客户端连接的错误,但可能还有更多。)

这是场景的相关部分:

    request
    {
        url         = "http://weatherforecast-d/";
        statuscode  = 401;
    }

    request
    {
        url         = "http://weatherforecast-d/";
               // problems begin here...
          authentication = "ntlm";
          username = "my username";
          password = "my password";
        statuscode  = 200;
    }

如果有人有 WCAT NTLM 脚本的运行功能示例,我将不胜感激。谢谢你。

我已经清理了 wcat.wsf 中的日志记录并进行了多次比较。必须有更好的方法来做到这一点,但我不知道。

  • "authentication" 解析,而其他参数名称不解析
  • “用户名”和“密码”本身不会导致致命错误
  • 如果我注释掉单个参数行“authentication”测试运行
  • 如果我取消注释同一行,则会出现致命错误
  • 脚本输出与失败前完全相同
  • basic 或 ntlm 会导致同样的失败,任何垃圾文本也是如此

这个问题似乎隐藏在 wcclient 的深处。我想我得开始寻找其他产品了。

【问题讨论】:

    标签: ntlm wcat


    【解决方案1】:

    错误在文档中:

    authentication = "ntlm";
    

    应该是:

    authentication = NTLM;
    

    参数不是动态字符串,而是关键字。引号使解析器失去了气味。

    我会将此标记为答案,因为它是,但我仍然有一个问题。目前,我找不到完全正确的方法来教 WCAT 识别来自服务器的 401 和 200 响应。它可以识别一些 401 和一些 200,但我无法将正确数量的查询组合成任何正确的组合以使其识别所有内容。

    【讨论】:

    • 从那以后你有没有找到 401 200 响应问题的有效组合
    • 我已经基本放弃了 WCAT。对于快速加载,我使用 TinyGet,对于实际测试,我们使用 Loadrunner。现在有很多应用程序对 WCAT 来说太复杂了,所以整个问题失去了价值。
    【解决方案2】:

    当我将端口放在事务请求之外时,我也遇到了同样的错误。一旦端口成为请求的一部分,错误就消失了。

    【讨论】:

    • 您正在监听非标准端口,对吧?我认为,在正常请求中明确指定 80 不会消除任何错误。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-18
    相关资源
    最近更新 更多