使用 VuGen JavaScript 引擎

适用于: Web - HTTP/HTML 和 SAP - 仅限使用 C 编写的 Web Vuser 脚本。

VuGen JavaScript 引擎是什么?

通常情况下,Web Vuser 脚本中包含 C 代码。内置的 JavaScript 引擎允许您向 C 代码中插入 JavaScript 代码段。

可以在 Vuser 脚本中对 JavaScript 执行什么操作?

可以将 JavaScript 代码 插入 Web - HTTP/HTML 或 SAP-Web Vuser 脚本,处理在客户端和服务器之间发送的请求和响应消息中包含的文本字符串。在执行关联和参数化操作时,经常需要处理字符串。典型的字符串处理包括:将十进制转换为十六进制、Base64 编码和解码、URL 编码和解码,以及访问 JSON 格式数据内的对象值。

注: 通过使用内置 DFE (数据格式扩展),可以执行上述的许多字符串处理程序。有关详细信息,请参阅数据格式扩展 (DFE) 概述

此外,在 JavaScript 中实现客户端逻辑时,向 Vuser 脚本插入 JavaScript 代码可能也很有用。通过将原始客户端 JavaScript 代码段插入 Vuser 脚本,用户无须将 JavaScript 逻辑重新写入要包含到 Vuser 脚本中的 C 代码。

可以使用 Vuser 脚本中的 JavaScript 代码来执行 XMLHTTPRequest。这将允许您使用标准 JavaScript API 来生成和发送 HTTP 或 HTTPS 请求。例如,此类 API 包括发送异步请求、分配回调以处理响应、读取 XML 格式的响应。以该方式使用的 XMLHTTPRequest 可代替对操作步骤(如 web_urlweb_custom_request)的调用。

返回顶部

为什么要使用 JavaScript 代码段?

虽然可以通过使用单独的 C 代码实现所需功能,但是由于下列原因,在 Vuser 脚本中包含 JavaScript 很有益:

  • 相比于 C 代码,Javascript 通常可提供更直观、更容易实现的解决方案。
  • JavaScript 正则表达式库简化了正则表达式的使用过程。
  • 大量 JavaScript 库可供用户使用,帮助处理字符串。
  • 客户端逻辑通常是以 JavaScript 实现的。插入原始 JavaScript 代码段后,无须将 JavaScript 客户端逻辑转换为 C 代码。

返回顶部

是否能在所有协议的 Vuser 脚本中使用 JavaScript 引擎?

不能,JavaScript 引擎仅允许您将 JavaScript 插入 Web - HTTP/HTML 和 SAP - Web Vuser 脚本。

返回顶部

JavaScript 引擎的一些有用使用场景包括哪些?

在下列场景中,在 Vuser 脚本中包含 JavaScript 代码可能很有用:

返回顶部

可以在 Vuser 脚本中使用哪些 API 函数来执行 Javascript 代码?

下面的 API 函数可用于在 Vuser 脚本中包含 JavaScript:

  1. web_js_run:运行指定的 JavaScript 代码。

  2. web_js_reset:清除 JavaScript 上下文。

可以使用 web_js_run 函数在 Vuser 脚本中包含 JavaScript 代码。通过使用 web_js_run 函数,可以将所需的 JavaScipt 代码插入 Vuser 脚本,也可以引用其中包含所需 JavaScript 代码的文件。

有关上述函数的详细信息以及它们的使用示例,请参阅函数参考

返回顶部

是否可以使用 JavaScript 访问任何“内部”API 函数?

Vuser 脚本中的 JavaScript 允许您访问一些“内部”LoadRunner API 函数,这些函数可以直接从 JavaScript 代码中的 web_js_run 函数调用。这些函数主要用于管理参数,但是也允许您记录指定消息、录制数据以及运行 XMLHTTPRequest

返回顶部

如何为 Vuser 启用 Javascript 引擎?

要在 Vuser 脚本中运行 JavaScript,必须为 Vuser 脚本启用 JavaScript 引擎。要启用 JavaScript 引擎,请打开“回放”>“运行时设置”>“Internet 协议”>“首选项”视图。转到 JavaScript 部分,然后选择启用运行 JavaScript 代码选项。

注: 启用此选项会导致创建 JavaScript 运行时引擎,即使脚本中没有 JavaScript 步骤也是如此。

返回顶部

如何配置 JavaScript 引擎?

可以使用 Vuser 脚本的运行时设置配置产品的自定义 JavaScript 引擎。

要访问 JavaScript 引擎 (JSE) 运行时设置,请选择“回放”>“运行时设置”>“Internet 协议”>“首选项”,然后展开“JavaScript”部分。

  • JavaScript 引擎运行时大小:指定所分配的 JavaScript 引擎运行时内存的大小 (以 KB 为单位)。运行大量 Vuser 时,可能需要增大该值。
  • 每个线程的 JavaScript 引擎堆栈大小:指定 Javascript 引擎内存中每个 Vuser 线程的大小 (以 KB 为单位)。对于大型对象或较深的堆栈调用,可能需要增大该值。

有关用户界面的详细信息,请参阅首选项视图 - Internet 协议

返回顶部

VuGen 的 JavaScript 引擎与 VuGen 的 JavaScript 协议之间有什么联系?

VuGen 的 JavaScript 引擎与 VuGen 的 JavaScript 协议之间没有联系。

返回顶部

疑难解答

如果在实现 JavaScript 引擎支持时遇到困难,请查看以下项获取可能的解决方案。

  1. 确保已启用 VuGen 的 JavaScript 引擎。有关详细信息,请参阅如何启用 JavaScript 引擎?
  2. JavaScript 限制您在一个函数中最多添加 9,000 个操作数。例如,如果要组合字符串("str1"+"str2"+"str3"+..."str9000"),则最多只能添加 9,000 个字符串。
  3. 内存问题

    • 如果已选择“每次迭代模拟一个新用户”>“每次迭代清除高速缓存”运行时设置,则会在每次迭代开始时自动调用 web_js_reset
    • 如果未设置每次迭代模拟一个新用户 > 每次迭代清除高速缓存,可通过在不再需要保存的上下文时在 Vuser 脚本中插入 web_js_reset 调用,避免消耗过多的内存。

    有关 web_js_reset 函数的详细信息,请参阅函数参考

    有关运行时设置的详细信息,请参阅运行时设置视图中选项下面的提示。

  4. 性能问题

    如果遇到性能问题,请修改 JavaScript 运行时设置。有关详细信息,请参阅首选项视图 - Internet 协议

返回顶部