首页 > 解决方案 > loadrunner的truclient协议中如何调用外部API

问题描述

我正在使用 truclient 协议录制脚本。在我的脚本中,我需要从外部调用生成密码的 API。使用关联关系获取密码,用作登录的输入。但是,我无法使用真正的客户端协议调用外部 API。有人可以建议如何在真正的客户端协议中调用外部 API。

标签: jmeterperformance-testingloadrunnertruclient

解决方案


您是否尝试过评估 JavaScript 步骤?您可以将消息发布到服务器并在运行时获取生成的密码。Chrome 和 Firefox 应该支持 XHR 和 fetch API,TCIE 应该支持 XHR。

当然。请查看详细步骤:

  1. 从 TruClient 拖放评估 JS 步骤

  2. 打开脚本编辑器

  3. 添加这些代码,确保使用同步 XHR 以确保在结束步骤开始之前返回密码:

    var xhr = new XMLHttpRequest(); xhr.open("POST", '/server', false);

    //随请求一起发送正确的头部信息 xhr.setRequestHeader("xxx", "value"); xhr.send();

    if (this.status === 200) { // 请求完成。在这里进行处理。} var 密码 = xhr.response;

  4. 将登录密码步骤从纯文本更改为 JS 并使用

    ArgsContext.password

    参考之前收到的密码。

如果您还有其他问题,请告诉我。如何使用您可以参考此链接的参数上下文。

顺便提一句。页面的窗口和文档对象可以在 TruClient 中通过 AUT.window、AUT.document 引用。

请从这里查看帮助文档。


推荐阅读