AWS · ML 博客

使用 Amazon Nova Act 扩展 UX 测试:用户流程分析新方法

Scaling UX testing with Amazon Nova Act: A new approach to user flow analysis

二〇二六年七月十五日 · 英文原文

Amazon Nova Act 是一个多模态基础模型,通过视觉理解与动作执行实现Web浏览器界面的智能交互。该方案构建了一个云部署的UX测试平台,包含文档处理、编排、执行与分析四层架构:利用Amazon Bedrock Knowledge Base从非结构化文档自动生成测试场景,由Nova Act代理在并行浏览器会话中执行用户流,并通过自动化分析计算可用性分数与摩擦点。测试结果以摘要指标、交互日志等形式存储在Amazon S3中,支持React仪表板展示。方案由Reilly Manton、Pablo Forero、Wesley Petry和Vanitha共同撰写。

用户体验(UX)测试面临多重挑战,限制了组织改善用户与平台交互方式的能力。UX 测试评估用户能否轻松有效地浏览数字界面以完成预期任务,例如查找产品、创建账户或完成购买。与关注功能缺陷的传统 QA 测试不同,UX 测试检查用户工作流,以识别影响用户满意度的导航摩擦和界面元素。手动测试无法规模化。测试人员只能评估有限的用户旅程,通常聚焦关键路径,而边缘场景则未被探索。此外,传统自动化工具依赖硬编码脚本,一旦界面变更就会失效,产生维护开销,限制了测试覆盖率。同时,对多样化的用户旅程、设备类型和交互模式进行全面测试,对大多数组织而言成本高昂且耗时。Amazon Nova Act 为这些挑战提供了不同的方法。Nova Act 是一个多模态基础模型,能够通过视觉和动作理解并与 Web 浏览器界面交互。与依赖预定义元素选择器的脚本工具不同,Nova Act 通过处理视觉信息智能地导航网站。它像人类测试人员一样分析网页截图。这使得 Nova Act 成为自动化 UX 测试的强大工具,因为它在导航界面时模拟了人类推理。该模型检查截图以理解页面布局,通过视觉线索识别交互元素,并基于上下文决定下一步要执行的动作。这种视觉理解使 Nova Act 能够适应界面变化并处理会破坏 Selenium 或 Playwright 等传统自动化工具的动态内容。Amazon Nova Act 的推理和思维链日志为网站设计和直观性提供了宝贵的洞察。使用生成式 AI 能够并行执行大规模的综合用户流测试。本方案演示了如何构建一个云部署的 UX 测试平台,该平台能从文档自动生成测试场景,利用 Nova Act 的智能导航能力大规模执行用户流,并通过自动化分析提供可操作的洞察。

方案概览

下图展示了一个四部分方案,从文档处理和流程发现开始,到最终分析结束。该方案由以下层级组成:

该架构引入了三项关键的生成式 AI 能力:使用 Amazon Bedrock Knowledge Base 从非结构化文档中进行可选的智能流程发现、用于网站测试的 Nova Act 计算机使用,以及自动化的结果分析,用于识别 UX 模式和摩擦点,为战略决策提供信息。

设置指南

在部署方案之前,请确认您已具备以下条件:

部署流程

完整的方案和部署说明可在 aws-samples GitHub 仓库中找到。该方案使用 AWS CDK 来自动化基础设施部署:

git clone git@github.com:aws-samples/sample-nova-act-ux-testing.git
cd nova-act-ux-testing
cp template.env .env
# 在 .env 文件中添加您的 Nova Act API 密钥
# 部署方案
./deploy.sh

请注意堆栈部署完成时打印的输出。您将在后续步骤中用到它们。

使用方案

部署后,您有几种创建测试流的选项:从文档自动生成、手动流程定义或混合方法。我们建议采用结合这两种方法的混合方法:使用自动生成从现有文档建立基线覆盖率,然后针对需要精确控制的特定测试用例、新功能或边缘场景,补充手动定义的流程。

选项 1:从文档自动生成流程

该方案使用一个与 Claude 4.5 Sonnet 集成的 Lambda 函数,将用户任务转换为详细的测试工作流。要有效使用此系统,请确定您的首要用户流并将其作为输入提供,确保包含实现同一目标的多种方式。例如,如果购买咖啡机是一个关键的用户旅程,请将基于搜索的方法和菜单导航方法作为单独的任务包含在内。系统通过查询知识库来了解您网站的具体实现细节,理解这些操作在您独特的站点架构中是如何执行的,从而处理每个任务。然后,系统生成三个详细级别的测试指令,从高层用户目标到细粒度的逐步过程。例如,基本指令可能表述为“购买一款评价高的不锈钢咖啡机”,而详细版本则将其扩展为精确的动作,如从菜单中选择厨房电器、应用材质和评分筛选器,以及完成结账流程。更多信息,请参阅 lambda/flow_discovery/index.py

  1. 上传文档:将您的应用程序文档、用户指南和流程规范放置在指定的 S3 存储桶中。您可以使用 CDK 堆栈部署输出找到 S3 存储桶 URL。系统支持多种文档格式,包括用户手册和指南、功能规范、常见用户旅程文档以及现有测试用例文档。
  2. 上传任务规范:将您的 tasks.json 文件放置在以 uxflowteststack-tasksbucket 开头的 S3 存储桶中。有关预期的 JSON 格式,请参阅项目 README。这将触发流程发现。
  3. 等待处理:上传后异步处理。流程发现组件分析您的文档以识别潜在的用户流,并将其转换为可执行的测试场景。要跟踪处理状态,您可以查看 Lambda 处理日志。
  4. 审查生成的流程:生成的流程会出现在 DynamoDB 表中,并在处理完成后可供执行。

选项 2:手动流程定义

为了精确控制测试场景,或者当您有文档中未涵盖的特定流程时,您可以通过将自定义流程直接插入 DynamoDB 表来手动定义它们。您可以在堆栈输出中找到表名。此方法非常适合测试特定的边缘情况、在文档存在之前验证新功能,以及测试需要特定用户上下文或数据的流程。请参阅 README 了解所需的 JSON 模式。

关键组件:

定制方案

对于需要用户身份验证的应用程序,您可以配置持久浏览器会话,以在测试运行之间保持登录状态。这消除了每次测试执行时重新进行身份验证的需要,并支持测试经过身份验证的用户流。当您的测试需要从网页提取结构化数据(例如验证表单提交或捕获动态内容)时,Nova Act 支持使用 Pydantic 模式进行可靠的数据提取。Nova Act 还处理文件操作,因此您可以测试上传工作流并验证下载的内容。以下是一个配置持久身份验证的示例。您可以在 ecs/ecs_act_headless/app.py 中找到并修改运行 Nova Act 流程的 Python 代码。

with NovaAct(
    starting_page="https://yourapp.com/purchase",
    user_data_dir="/tmp/authenticated-session",
    clone_user_data_dir=False
) as nova:
    # 您的经过身份验证的测试流程在此运行
    nova.act("search for bananas")
    nova.act("purchase 2 bunches")

有关使用 Pydantic 模式进行结构化数据提取、文件上传/下载处理以及身份验证设置的详细实现,请参阅 Nova Act SDK 文档。

执行结果

该方案为每次测试执行生成以下结果,并将其存储在 Amazon S3 中。您可以在 flow-test-results-bucket 中找到原始结果。

摘要指标 (results_summary.json):每次测试执行都会生成一个摘要文件,其中包含有关流程执行的高级指标。摘要包括每个步骤的持续时间、所需操作数、成功/失败状态以及任何提取的数据。

{
  "flow_id": "ecommerce_purchase_flow",
  "batch_id": "batch_12345",
  "timestamp": "2026-07-01T20:50:01.811454",
  "results": [
    {
      "instruction": "search for desk lamp",
      "response": null,
      "metadata": {
        "num_steps": 3,
        "duration": 17.57,
        "success": true
      }
    },
    {
      "instruction": "select the first result",
      "response": null,
      "metadata": {
        "num_steps": 2,
        "duration": 11.1,
        "success": true
      }
    }
  ]
}

详细交互日志:Amazon Nova Act SDK 生成详细的 HTML 报告,显示 Nova Act 观察到的截图、决策过程和推理,以及所采取的具体操作(点击、滚动、表单输入)。

分析方法

Lambda 函数处理原始执行结果,并跨不同抽象层计算指标,以计算原始计数、基础设施调整后的信号以及综合质量分数。这些指标为面向多个受众和用例构建的 React 仪表板提供支持。仪表板组织成不同的标签页。例如,“概览”标签页呈现测试运行的整体健康状况,并带有一个专门的错误调整面板,用于将基础设施故障与真实的代理故障分开。“性能与效率”标签页按粒度级别分解步骤和流程时间,显示指令细节级别如何影响被测试用户体验的质量。以下截图展示了一些关键指标。

清理

要清理方案,请运行以下命令:

cdk destroy

结论

传统的 UX 测试需要大量的时间和资源,常常限制了团队验证其界面的彻底性。此 Amazon Nova Act 方案通过自动化大规模测试执行来解决这些限制。Nova Act 智能浏览器交互能力与可扩展云基础设施的结合,为 UX 测试创造了一种新模式。借助这种模式,全面的流程测试、界面验证和数据驱动的 UX 决策变得可大规模实践。团队现在可以测试更多的用户旅程,更早地发现问题,并更快地迭代其用户体验。团队可以在发布前使用 Nova Act 自动化来彻底测试每个新功能和界面变更。团队不再局限于有限的样本测试,而是可以跨不同设备和场景验证整个用户旅程。这种全面的测试方法有助于及早发现 UX 问题,同时降低测试成本和手动验证变更所花费的时间。

了解更多

要了解更多信息,请参阅以下资源:

关于作者

Reilly Manton Reilly 是 AWS 电信部门驻纽约的解决方案架构师,专注于多模态生成式 AI 和代理系统。他致力于帮助客户将新兴的 AI 能力投入生产,对互操作性协议和大规模代理架构特别感兴趣。工作之余,Reilly 是一名狂热的跑步爱好者,并喜欢为开源项目做贡献。

Pablo Forero Pablo 是 AWS Telco IBU 的解决方案架构师,专注于 GenAI/ML 和数据分析应用及用例。凭借在音乐、心理学和哲学方面的多元化背景,Pablo 为他的工作带来了独特的视角。当他不帮助客户设计创新解决方案时,你会发现他在摆弄家用机器人、进行 3D 打印和弹吉他。

Wesley Petry Wesley 是 AWS 电信部门驻纽约地区的解决方案架构师。他专注于构建和设计生成式 AI 及代理系统,拥有无服务器和边缘计算背景。Wesley 与客户紧密合作,设计基于 AI 的解决方案,并热衷于将新兴技术转化为可用于生产的架构。在客户工作之外,他喜欢在行业活动中发表演讲,并贡献参考实现以帮助其他构建者入门。

Vanitha Vanitha 是驻芝加哥的高级专家解决方案架构师,专注于创新的生成式 AI 和数据分析解决方案。她专注于帮助零售和电信行业组织利用先进 AI 技术的力量来转变其运营。当她不帮助客户设计创新解决方案时,你会发现她在教学或构建个人项目,为日常运营创建 UI 解决方案。她在技术和云架构方面拥有超过 28 年的经验,在其职业生涯中领导了各种迁移和现代化工作。她目前的重点是构建生产级生成式 AI 和分析解决方案——通过动手 POC 和战略指导,帮助客户采用这些技术。

译自 AWS · ML 博客 · 录于 二〇二六年七月十五日