使用 Synthetics 录制器

编辑

与任何脚本录制技术一样,Elastic Synthetics 录制器应该用作帮助创建脚本主要结构的工具。对于更简单的站点,您可能可以直接使用 Synthetics 录制器的输出来创建合成监控,但对于更复杂和动态的站点,或者为了限制不稳定,您可能需要在将其用于创建监控之前编辑其输出。

您可以使用 Synthetics 录制器,通过与网页交互并导出反映您所有操作的旅程代码来编写合成测试

Elastic Synthetics Recorder after recording a journey and clicking Export
设置
编辑

有关如何下载 Elastic Synthetics 录制器的信息,请访问下载页面

录制旅程
编辑

要录制旅程,请执行以下操作:

  1. 在搜索框中输入起始 URL。此 URL 将是录制器将创建的旅程脚本的起点。
  2. 单击开始或按键盘上的 Enter 键。这将启动一个 Chromium 窗口,打开您指定的页面并开始录制。
  3. 开始与浏览器交互。这可以包括单击文本、导航、聚焦输入(如按钮和文本字段)等等。
  4. (可选)您可以单击暂停以临时停止录制操作,同时继续与浏览器交互。再次单击以重新开始录制操作。注意:如果您在任何时候暂停了录制,测试旅程尤为重要。
  5. 当您完成与浏览器窗口的交互后,单击停止或关闭浏览器以停止录制。
编辑旅程
编辑

开始录制后,您可以使用 Synthetics 录制器 UI 来编辑步骤和单个操作,然后再生成旅程代码。您也可以在停止录制后编辑旅程。

命名步骤
编辑

命名步骤可以帮助您更容易理解生成的旅程代码。如果您提供了步骤名称,则该名称将同时在 UI 和生成的代码中使用。如果您不命名步骤,UI 将显示“步骤 1”、“步骤 2”等等,并且生成的代码将使用步骤中的第一个操作作为步骤文本。

要编辑步骤名称:

  1. 将鼠标悬停在当前步骤名称上,然后单击出现的铅笔图标。
  2. 编辑文本框中的文本。
  3. 单击键盘上的 Return 或 Enter 键以保存更新的名称。
拆分为多个步骤
编辑

步骤表示应该按特定顺序完成的操作组。将旅程分解为步骤可以更容易读取生成的代码。它还可以更容易解释 Synthetics 应用程序中的结果,因为每个步骤都会单独显示在 Synthetics 应用程序中,并附带屏幕截图,方便调试和错误跟踪。

默认情况下,Synthetics 录制器会将所有操作分组到一个步骤中,但您可以将操作分解为任意数量的步骤。

要添加步骤,请执行以下操作:

  1. 单击两个操作之间的加号图标以创建新步骤。
  2. (可选)考虑命名步骤。

使用垃圾桶图标删除步骤分隔符,将已删除步骤中的操作添加到上一个步骤中。

编辑或删除录制的操作
编辑

您可以通过编辑录制器生成的操作来微调旅程。您无法更改命令的类型(例如,“单击”或“导航”),但可以更改传递给命令的值。

要编辑操作:

  1. 将鼠标悬停在操作上,然后单击出现的铅笔图标。
  2. 根据需要编辑值。
  3. 单击保存

要删除操作:

  1. 将鼠标悬停在要删除的操作上,然后单击三个点以获取更多选项。
  2. 单击删除操作

如果您更改或删除了任何操作以确保旅程仍然有效,则测试旅程尤为重要。

添加断言
编辑

断言可以通过确定您正在测试的页面状态在有效的合成旅程中发挥重要作用。这可以包括检查元素是否可见或检查文本字段的内容。您无法仅通过与浏览器窗口交互来生成断言。相反,您可以在生成的操作之间添加断言。

要添加断言:

  1. 找到应该在您要断言条件之前立即完成的生成操作。
  2. 将鼠标悬停在该操作上,然后单击三个点以获取更多选项。
  3. 单击添加断言。这将在 UI 中添加一个新的“assert”操作。
  4. 提供断言的类型、选择器和值。
  5. 单击保存

如果您在完成录制后添加了任何断言以确保旅程仍然有效,则测试旅程尤为重要。

测试旅程
编辑

在录制过程期间或之后,您随时可以测试脚本。

当您单击测试按钮时,Elastic Synthetics 将运行旅程。当测试运行时,录制器将按步骤显示结果。如果存在任何阻止旅程运行的错误,录制器将显示相关的错误消息以帮助您调试。

如果您在录制器中暂停了录制、更新了操作或手动添加了断言,那么测试旅程以验证操作是否按顺序工作尤为重要。

导出
编辑

当您对创建的旅程感到满意时,您可以从录制器中导出它。

单击导出以查看最终的旅程代码。从那里,您可以通过以下方式使用代码:

  • 将包含所有步骤的代码复制并粘贴到新的或现有的合成项目内联监控中。
  • 单击导出以保存包含所有步骤的 JavaScript 文件。

您还可以选中导出为项目,然后复制和粘贴或导出以获取完整的旅程代码,包括所有依赖项的 journey 和导入。