多步骤操作

记录并管理到达应用程序中可能遗漏的特定部分所需的多步骤操作。

需要执行一个多步骤操作来探索站点中只有通过按特定顺序单击才能访问的部分(比如,在线商店,用户需首先将商品添加到购物车才能付款)。请考虑以下三个页面:
  1. 用户将一个或多个商品添加到购物车
  2. 用户填写付款和送货详细信息
  3. 用户收到订单完成的确认
只有通过第 1 页才能到达第 2 页。只有通过第 1 页然后是第 2 页才能到达第 3 页。这是一个序列。为能够测试第 2 页和第 3 页,AppScan® 必须在进行各测试之前发送正确的 HTTP 请求序列。

在上面的示例中,您将按以下顺序记录单个序列:第 1 页 > 第 2 页 > 第 3 页。AppScan® 将根据需要从此序列中抽取必要的子序列。(当测试第 2 页时,将会首先发送第 1 页请求;当测试第 3 页时,将会发送第 1 页请求,然后是第 2 页请求。)

注: 建议将多步骤操作的数量限制在五个,其中每个操作中的步骤数不超过 25 个,总步骤数不超过 70 个。
注: 配置多步骤操作不应被误认为是手动探索,并且它只能在类似上述情况中使用。有关更多详细信息,请参阅使用 AppScan 手动探索

设置

详细信息

序列

记录序列

单击以记录新序列。如果已配置登录详细信息,则可以单击向下箭头进行选择。有关更多信息,请参阅使用浏览器记录序列

回放方法

对多步骤操作进行记录时,AppScan 将对操作和请求均进行记录。您可以选择其中的哪些将用于扫描:
基于请求的回放
从记录发送原始 HTTP 请求。这种方法通常更快。
基于操作的回放
重放用户的单击和击键。选择此方法的原因可能是站点包含大量 JavaScript,或者是因为在您尝试验证基于请求的回放中的某些请求时,这些请求被标记为红色 X。此方法可能会增加扫描时间。
缺省方法是基于请求的回放。
注: 如果装入已记录 AppScan 版本的序列不支持基于操作的回放,则基于请求的回放将用于该序列,即使选择了基于操作的回放。
注: 如果为多步骤操作选择基于操作的回放,则还必须选择基于操作的登录方法。如有必要,再次记录登录序列(请参阅登录管理)。
注: 如果您的扫描配置为使用外部浏览器(“工具”>“选项”>“使用外部浏览器”),并且您遇到录制问题,请通过将 Gui.RecordUserActionsInExternalBrowser 设置为 False(在工具 > 选项 > 高级下)来禁用基于操作的录制,然后重试。

导入

导入从其他扫描导出的序列(SEQ 文件)。

导出

将所选序列导出为 SEQ 文件以用于其他扫描中。

序列列表

列出为此扫描记录的所有多步骤操作。

序列名称

在序列列表中所选的序列名称。每个名称旁边的复选框指示是否为此扫描启用序列。

三点菜单上提供的选项:
验证
单击此项可检查序列是否有效。AppScan 会重放序列,那些收到的响应与原始响应不同的请求将以红色 X 标记,表示不会对这些请求进行测试。
提示: 请求收到不同响应的常见原因是存在需要定义的动态序列变量,请参阅序列变量。如果没有此问题,并且站点包含 JavaScript,那么更改为基于操作的回放可能会提供更好的结果。
重命名
重命名所选序列。
删除
从现行扫描中删除选取的序列。

序列详细信息

验证 单击此项可检查序列是否有效。只有在验证后,故障诊断选项才会启用。

记录的 URL

显示所选序列中的链接或操作。

已验证
绿色复选标记表示 URL 已验证。未验证的 URL 旁边会显示红色 X 图标。
测试
指示此 URL 是否将自行测试(以及在多步骤操作中)。选项为“是/否”。要更改设置,请右键单击 URL 并选择测试/不测试。即使选择“否”,URL 仍将作为多步骤操作的一部分播放。
播放序列
(仅适用于已测试的 URL)指示每次测试此 URL 时,是否将重放序列中的上述步骤。选项为“是/否”。要更改设置,请右键单击并选择测试请求之前播放序列 > 是/否
此处查看三点菜单下的各种选项。

在序列重放之前登录

如果选中,则每次播放多步骤操作时,AppScan 都会先登录。如果将登录记录为多步骤操作的一部分,则此选项将被清除。

允许播放优化

(仅基于请求的回放)在选中时(缺省),AppScan® 会通过避免不必要的回放来试图优化扫描时间。除非您发现由于播放优化致使 AppScan® 应用程序某些部分缺失,否则不应禁用此设置。扫描日志可以帮助对此进行确定。

以单线程方式测试

AppScan® 如果两个或多个请求不要求在其之间重放序列,那么可能会同时发送这些请求。如果这导致应用程序某些部分缺失,请选中此复选框。

序列变量

列出在记录序列时收到的变量,并且指示 AppScan® 已确定应跟踪的变量。这些可能是会话标识或其他变量。您可以更改该列表中变量的状态以改进 AppScan® 对这些变量的处理方式(有关详细信息,请参阅序列变量)。

相关主题:

使用 AppScan 手动探索