Jmeter 如何在loadrunner的truclient协议中调用外部API

Jmeter 如何在loadrunner的truclient协议中调用外部API,jmeter,performance-testing,loadrunner,truclient,Jmeter,Performance Testing,Loadrunner,Truclient,我正在使用truclient协议录制一个脚本。在我的脚本中,我需要从外部调用一个生成密码的API。使用co关系获取密码,该关系用作登录的输入。 但是,我无法使用true client协议调用外部API。 任何人都可以建议如何在真正的客户端协议中调用外部API。您是否尝试过评估JavaScript步骤?您可以将消息发布到服务器,并在运行时获取生成的密码。Chrome和Firefox应该支持XHR和FetchAPI,TCIE应该支持XHR 当然。请检查详细步骤: 从TruClient拖放evalua

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

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

当然。请检查详细步骤:

  • 从TruClient拖放evaluate JS步骤

  • 打开脚本编辑器

  • 添加这些代码时,请确保使用sync XHR确保在开始结束步骤之前返回密码:

    var xhr=new XMLHttpRequest(); xhr.open(“POST”,“/server”,false)

    //随请求一起发送正确的标头信息 xhr.setRequestHeader(“xxx”,“值”); xhr.send()

    如果(this.status==200){ //请求已完成。请在此处进行处理。 } var password=xhr.response

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

    ArgsContext.password

    以引用以前收到的密码

  • 如果你还有其他问题,请告诉我。如何使用参数上下文您可以引用它

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


    请查看中的帮助文档。

    能否请您逐步详细说明此过程step@Vishal答案已更新。如果还有其他问题,请告诉我。谢谢。如果是REST调用,您只需在“generic browser action”函数中提供API url,并且可以使用Evaluate JavaScript“Utils.addAutoHeader”配置支持的头文件。这将有助于调用API。虽然我不太确定我们如何关联,因为TruClient完全在表示层上,但我怀疑它是否能够识别API自定义文本。手动关联的一种方法是使用“验证”函数,将操作从“验证”更改为“getProperty”,并选择可见文本。提供用于将提取的值保存到的变量名。