Construcción de pruebas de UI orientadas a la intención con Amazon Nova Act
Building intent-driven UI testing with Amazon Nova Act
Sakthi Chellapparimanam
Para escalar las pruebas de UI orientadas a intención en todos sus equipos de productos, Epsilon, una empresa de datos, tecnología y servicios de marketing y parte de Publicis Groupe, se volvió hacia Amazon Nova Act. Con cientos de millones de perfiles de consumidores y miles de relaciones con marcas, Epsilon necesitaba pruebas de UI que pudieran seguir el ritmo de los cambios rápidos en las aplicaciones. La solución no podía crear una sobrecarga de mantenimiento para cada equipo de producto.
Dentro de Epsilon, el equipo de la plataforma Agentic (50 ingenieros) construye infraestructura compartida para que otros equipos de producto puedan construir, implementar, gobernar y ejecutar agentes de AI de manera segura. Con esta plataforma compartida, los equipos obtienen un constructor de agentes basado en habilidades. También obtienen identidad federada y autorización previa al vuelo, integración del Protocolo de Contexto de Modelo (MCP) y aprovisionamiento entre cuentas. Cuando un equipo de producto desea adoptar herramientas de AI, obtiene capacidades sin configuración adicional y sin volver a resolver la identidad, la seguridad, la infraestructura del navegador o la integración del modelo por su cuenta.
Una de esas capacidades administradas es pruebas de UI. Con Amazon Nova Act y Amazon Bedrock AgentCore Browser (una capacidad de Amazon Bedrock AgentCore), el equipo de plataforma de Epsilon pudo ofrecer pruebas resilientes y orientadas a intención como un servicio a los equipos en la plataforma.
En esta publicación, recorremos la arquitectura de Epsilon para ofrecer pruebas de UI como un servicio de plataforma administrado, mostramos el código de integración principal de Nova Act y la herramienta de navegador de Amazon Bedrock AgentCore, destacamos un flujo de trabajo de prueba concreto de 18 pasos y compartimos las mejores prácticas y los resultados medidos.
El desafío: Mejorar la cobertura, no reemplazar lo que funciona
La práctica de pruebas de UI existente de Epsilon no estaba rota. El equipo mantenía un conjunto de regresión basado en Playwright que validaba la funcionalidad en sus aplicaciones web, y funcionaba bien. Playwright sigue siendo su columna vertebral de regresión hoy en día.
La oportunidad que Epsilon identificó fue aditiva, no correctiva:
Pruebas de Playwright con script son efectivas para comprobaciones de regresión deterministas. Sin embargo, están estrechamente acopladas a selectores y estructura de página. Los cambios cosméticos en la interfaz de usuario pueden romperlos incluso cuando la funcionalidad subyacente es sólida.
Múltiples equipos de productos necesitaban una cobertura de pruebas completa contra sus propias aplicaciones. Establecer la infraestructura del navegador, gestionar las dependencias y integrarse con los sistemas de identidad por equipo creaba un esfuerzo duplicado.
El equipo de la plataforma quería que las pruebas de interfaz de usuario fueran una capacidad administrada que se ajustara a su modelo de agente existente, no una CLI personalizada que cada equipo incorporado tuviera que operar.
El objetivo: agregar pruebas basadas en intención sobre la suite de regresión de Playwright existente. Entregarla como un servicio de plataforma multi-tenant para que cada equipo de productos de Epsilon pudiera consumirla a través de la misma superficie de API que utilizaban para cada otra capacidad de agente.
Por qué Epsilon eligió Amazon Nova Act y la herramienta de navegador Amazon Bedrock AgentCore Browser Tool
Epsilon evaluó opciones contra dos requisitos: autoría de pruebas en lenguaje natural (para complementar las pruebas de Playwright basadas en selectores) e infraestructura de navegador administrada (para ajustarse a su modelo de plataforma multi-tenant). Con Amazon Nova Act combinado con la herramienta de navegador Amazon Bedrock AgentCore Browser Tool, Epsilon podría abordar ambos.
Pasos en lenguaje natural. Los pasos de las pruebas son instrucciones en inglés plano ejecutadas por Nova Act. Son resistentes a los cambios cosméticos en la interfaz de usuario y legibles por no ingenieros. Un paso como “Confirmar que el saldo de recompensas es visible” envejece mucho mejor que un selector CSS frágil.
Sesiones de navegador efímeras administradas por AWS. Con la herramienta de navegador Amazon Bedrock AgentCore Browser Tool, los equipos obtienen instancias de navegador aisladas sin binarios para enviar y sin servidor de visualización para mantener. La herramienta de navegador Amazon Bedrock AgentCore Browser Tool también ofrece una vista en vivo para la observación o toma de control humana (útil para CAPTCHAs o autenticación de múltiples factores), grabación de sesiones a Amazon Simple Storage Service (Amazon S3) y auditoría de AWS CloudTrail, todo sin configuración adicional.
Autenticación basada en AWS Identity and Access Management (AWS IAM). Con Nova Act, puede autenticarse a través de la cadena de credenciales de AWS estándar (el rol de tarea). Esto se ajusta al modelo de seguridad existente de Epsilon sin distribuir claves de API separadas.
Amigable con cuentas cruzadas. Con Nova Act y la herramienta de navegador Amazon Bedrock AgentCore Browser Tool, puede integrarse en su provisión de AWS Security Token Service (AWS STS) AssumeRole existente. Cada equipo incorporado puede ejecutar pruebas dentro de su propia cuenta de AWS bajo un rol con ámbito. Esto mantiene el aislamiento y la auditoría.
Epsilon eligió específicamente la herramienta Amazon Bedrock AgentCore Browser Tool porque elimina la carga operativa de administrar binarios de navegador, servidores de visualización y ciclo de vida de sesión. El equipo de la plataforma Agentic no tenía interés en poseer esa infraestructura.
La solución: Arquitectura e implementación
La solución de Epsilon tiene tres componentes principales: una API de plataforma para crear flujos de trabajo, un ejecutor de tareas en segundo plano para ejecutarlos y la integración de Nova Act y Amazon Bedrock AgentCore Browser Tool que controla el navegador.
Arquitectura de la plataforma
La capacidad de prueba de UI de Epsilon sigue un pipeline claro:
Un usuario crea un flujo de trabajo a través de la API de la plataforma, especificando un target_url y una lista de pasos en lenguaje natural.
Al crear, la plataforma registra una definición de flujo de trabajo de Nova Act en AWS.
Al ejecutar, un ejecutor de tareas en segundo plano (Celery, un framework de Python para el procesamiento de trabajos asíncronos) abre una sesión de navegador de Amazon Bedrock AgentCore Browser Tool. Ejecuta cada paso a través de Nova Act sobre un Protocolo de herramientas de desarrollo de Chrome (CDP) WebSocket (la interfaz estándar para controlar programáticamente los navegadores Chromium), incluyendo la lógica condicional (por ejemplo, “si aparece una caja de tour, saltarla”).
El sistema captura una captura de pantalla por paso, rastrea el paso de aprobado/reprobado, calcula una tasa de aprobación general y almacena todo (resultados JSON, capturas de pantalla en Amazon S3, ID de sesión).
Un gancho de finalización se dispara para que el resultado se registre de nuevo en la plataforma.
Figura 1: Arquitectura del servicio de prueba de UI de Epsilon
La Figura 1 muestra la arquitectura en capas del Servicio de Pruebas de UI de Epsilon. Las solicitudes de los usuarios fluyen desde el frontend de Agent Cloud a través de una API Gateway con autenticación y verificaciones de permisos. La capa de API (Django REST) expone endpoints para flujos de trabajo, ejecuciones, suites de automatización y estadísticas. La capa de lógica de negocio incluye un Administrador de flujos de trabajo, un Orquestador de ejecuciones y un Coordinador de suites. Los trabajos de pruebas se colocan en cola en Amazon Simple Queue Service (Amazon SQS) y se recogen por el Servicio Runner que se ejecuta en Amazon Elastic Container Service (Amazon ECS), que contiene el motor Nova Act y un navegador Chromium sin cabeza. Los resultados, capturas de pantalla, trayectorias e informes HTML se almacenan en Amazon S3.
La capacidad se expone como un agente estándar (ui-test-agent) con dos habilidades:
ui-test-recorder: Explorar un escenario de manera interactiva y grabar pasos en lenguaje natural.
ui-test-executor: Ejecutar pasos grabados y devolver resultados estructurados.
Los equipos incorporados consumen las pruebas de UI de la misma manera que consumen cualquier otro agente de plataforma. No hay infraestructura adicional para administrar. El proceso de incorporación es sencillo. El equipo de la plataforma proporciona un rol de IAM entre cuentas para el nuevo equipo, registra las URLs de la aplicación objetivo y otorga acceso al ui-test-agent a través de la API de plataforma existente. A partir de ese momento, los equipos crean flujos de trabajo, desencadenan ejecuciones y recuperan resultados a través de la misma interfaz que ya utilizan para otras capacidades de la plataforma.
La integración central
La integración de Nova Act + Amazon Bedrock AgentCore Browser Tool es concisa:
import boto3
from bedrock_agentcore.tools.browser_client import browser_session
from nova_act import NovaAct
boto_session = boto3.Session(region_name=region)
with browser_session(region) as client:
ws_url, headers = client.generate_ws_headers()
with NovaAct(
cdp_endpoint_url=ws_url,
cdp_headers=headers,
boto_session=boto_session,
starting_page=url
) as nova_act:
result = nova_act.act(instruction)
Este patrón (abrir una sesión de navegador administrada, conectarse a través del WebSocket CDP y realizar acciones con lenguaje natural) es la base. Epsilon lo envuelve con las capas de orquestación multi-tenant, captura de resultados y observabilidad de su plataforma.
Ejemplo: Automatizar el flujo de 'Crear un agente'
Para ilustrar las pruebas basadas en intención, aquí hay un flujo de trabajo representativo de la plataforma de Epsilon. Ejercita el inicio de sesión, la entrada de formularios, el manejo condicional, el desplazamiento y la verificación. Los siguientes pasos resaltan los patrones diferenciadores de Nova Act:
Paso
Instrucción
1
Escribir el nombre de usuario y elegir Siguiente
2
Introducir la contraseña y elegir Verificar
3
Navegar a Crear Agente y seleccionar la tarjeta Diseñar una nueva especificación
4
Si aparece una caja de tour de incorporación, elija Omitir tour, luego verifique que se cargó la página correcta
5
Rellene los campos de nombre y descripción del agente
6
Desplácese hacia abajo hasta que el campo Declaración de objetivo sea visible, luego rellénelo
7
Si la caja de búsqueda de habilidades no es visible, desplácese hasta que aparezca. Luego, busque y agregue una habilidad
8
Elija Guardar, confirme la ventana de éxito, navegue hacia atrás y verifique que el nuevo agente aparezca en la lista
Los pasos 4 y 7 demuestran lógica condicional: “si un elemento aparece, manejarlo” y “si un objetivo no es visible, desplazarse hasta que lo sea”. Estos patrones requerirían ramificación explícita en un framework tradicional. Nova Act los maneja de forma natural a través de la comprensión del lenguaje.
Aislamiento de runtime
Epsilon ejecuta pruebas de UI en un servicio de ejecutor dedicado (un sidecar de FastAPI) que fija nova-act 3.x con soporte de autenticación de Workflow y IAM, además del cliente de la herramienta Amazon Bedrock AgentCore Browser. Esto mantiene las dependencias separadas del backend principal para que no entren en conflicto con la pila de agentes de Strands. El worker vuelve a la ejecución en proceso si el ejecutor está deshabilitado, proporcionando resiliencia durante las implementaciones.
Mejores prácticas
Basándose en su experiencia al construir pruebas de UI como una capacidad de plataforma, el equipo de Epsilon recomienda:
1. Escribir pasos como intención, no como mecánica
GOOD: "Confirm the rewards balance is visible"
BAD: await page.locator('#rewards-balance-container > span.amount').toBeVisible()
Los pasos basados en intención sobreviven a los rediseños de UI. Los gerentes de productos y los líderes de aseguramiento de la calidad (QA) que pueden no escribir código pueden revisarlos directamente.
2. Aislar el runtime de Nova Act
Fijar las dependencias de Nova Act y la herramienta Amazon Bedrock AgentCore Browser en un servicio o contenedor dedicado. Epsilon aprendió que el punto final de firma para los objetivos de Nova Act us-east-1 independientemente de la región de la sesión del navegador. Ejecutarlo en un servicio separado con su propio archivo de bloqueo de dependencias evita conflictos difíciles de depurar.
3. Reutilizar trayectorias grabadas para reducir costos
Epsilon utiliza reintentos de trayectorias en estado borrador, guarda la trayectoria exitosa y la reproduce en estado activo. Las ejecuciones repetidas omiten el pensamiento redundante del modelo de lenguaje grande (LLM), reduciendo tanto la latencia como el costo para ejecuciones repetidas de estilo de regresión.
4. Diseñar para multiarrendamiento desde el primer día
Utilice el rol cruzado de cuenta con políticas de IAM con alcance. Las pruebas de cada inquilino se ejecutan bajo su propio rol en su propia cuenta. Esto proporciona aislamiento, auditoría y contención del alcance de fallas sin infraestructura personalizada por equipo.
5. Apóyese en la observabilidad administrada
Con la herramienta Amazon Bedrock AgentCore Browser Tool, los equipos obtienen una vista en vivo, grabación de sesiones y integración con AWS CloudTrail. Epsilon utiliza estas capacidades integradas en lugar de construir una observabilidad personalizada, reduciendo el mantenimiento y brindando a los equipos de cumplimiento superficies de auditoría familiares.
6. Tenga en cuenta el comportamiento de la ventana gráfica de la herramienta Amazon Bedrock AgentCore Browser Tool
Cuando se solicitan los pasos de Nova Act, tenga en cuenta los valores predeterminados de la ventana gráfica de la herramienta Amazon Bedrock AgentCore Browser Tool. Los pasos que hacen referencia al desplazamiento (por ejemplo, "desplazarse hacia abajo hasta que el cuadro de texto de la Declaración de objetivos sea visible") verifican que Nova Act maneje el contenido en la parte inferior de la página correctamente.
Resultados e impacto
La capacidad de prueba de interfaz de usuario de Epsilon está operativa en varios equipos, con la arquitectura multiinquilino comprobada en producción.
Dimensión
Amazon Nova Act
Playwright (equivalente)
Líneas autorizadas
18 pasos de lenguaje natural
~80-150 líneas de código
Selector/inspección de DOM
Ninguno
Requerido por cada paso interactivo
Tiempo de autorización (por flujo de trabajo)
~5-10 minutos
~30-90 minutos
Proporción de esfuerzo
Línea base
4-6 veces más esfuerzo
Aquí se presentan los resultados medidos:
4-6 veces más rápido la autoría de pruebas (basado en las mediciones internas de Epsilon). Un flujo de trabajo representativo de 18 pasos tomó 5-10 minutos para autorizar con Nova Act, en comparación con 30-90 minutos para el script equivalente de Playwright (80-150 líneas de código). Cada paso interactivo en el script de Playwright requiere inspeccionar el DOM, elegir un selector estable, y codificar esperas explícitas, aserciones y ramificación para casos condicionales. Nova Act reemplaza esa sobrecarga por paso con 18 instrucciones en lenguaje natural y cero selector o inspección del DOM, con lógica condicional (como los pasos de tour-box y scroll-until-visible) expresada en inglés plano.
100 por ciento de tasa de aprobación en la reproducción de trayectoria (basado en las mediciones internas de Epsilon). Después de que un flujo de trabajo pasa la fase inicial de exploración (típicamente 4-5 iteraciones de prompt), Epsilon guarda la trayectoria exitosa y la reproduce de manera determinista. Las trayectorias guardadas logran una tasa de aprobación del 100 por ciento en ejecuciones repetidas.
Barrera más baja para la autoría de pruebas. Los pasos se leen como inglés plano. Los miembros del equipo más allá de los ingenieros de pruebas core pueden leer, revisar y proponer pruebas, ampliando la propiedad de la calidad.
Registro de auditoría integrado. La integración con AWS CloudTrail y la grabación de sesión de Amazon Bedrock AgentCore Browser Tool hicieron que las conversaciones de depuración y cumplimiento fueran más fáciles. Este fue un beneficio que el equipo no había previsto inicialmente.
Cero sobrecarga de infraestructura por equipo. Los equipos incorporados obtienen pruebas de UI a través de la misma superficie de API que cualquier otro agente de plataforma. No hay binarios de navegador, no hay Selenium grid, no hay servidores de visualización para administrar.
Visibilidad de aprobación/fallido por paso. La captura de pantalla en cada paso proporciona un contexto de depuración granular, reduciendo el tiempo medio para diagnosticar fallas.
“Nova Act nos permitió convertir las pruebas de UI de una tarea frágil y tediosa en una capacidad de plataforma administrada. Nuestras pruebas ahora describen la intención en inglés plano, se ejecutan en navegadores administrados por AWS y cada equipo de producto que incorporamos obtiene pruebas confiables sin configuración adicional”.
— Equipo de plataforma Agentic de Epsilon
Aprende más
El equipo de plataforma Agentic de Epsilon demostró cómo entregar pruebas de UI resistentes y dirigidas por intención como un servicio administrado utilizando Amazon Nova Act y Amazon Bedrock AgentCore Browser Tool. Puedes aplicar el mismo patrón a tu propia plataforma multi-tenant para eliminar la sobrecarga de infraestructura de navegador y hacer que la autoría de pruebas sea accesible para no ingenieros.
Si deseas construir capacidades de pruebas de UI dirigidas por intención similares con Amazon Nova Act y Amazon Bedrock AgentCore Browser Tool, aquí hay recursos para empezar: ___CODE_BLOCK_X___
Para obtener más información sobre cómo su organización puede utilizar la automatización de navegador basada en intención para pruebas, visite la página del producto de Amazon Nova Act.
Epsilon es una empresa de Publicis Groupe. Obtenga más información en epsilon.com.
Acerca de los autores
To scale intent-driven UI testing across its product teams, Epsilon, a data, technology, and marketing-services company and part of Publicis Groupe, turned to Amazon Nova Act. With hundreds of millions of consumer profiles and thousands of brand relationships, Epsilon needed UI testing that could keep pace with rapid application changes. The solution could not create maintenance overhead for every product team.
Within Epsilon, the Agentic Platform team (50 engineers) builds shared infrastructure so other product teams can build, deploy, govern, and run AI agents safely. With this shared platform, teams get a skills-based agent builder. They also get federated identity and pre-flight authorization, Model Context Protocol (MCP) integration, and cross-account provisioning. When a product team wants to adopt AI tooling, they get capabilities without additional configuration and without re-solving identity, security, browser infrastructure, or model integration on their own.
One of those managed capabilities is UI testing. With Amazon Nova Act and Amazon Bedrock AgentCore Browser (a capability of Amazon Bedrock AgentCore), Epsilon’s platform team could deliver resilient, intent-driven testing as a service to teams on the platform.
In this post, we walk through Epsilon’s architecture for delivering UI testing as a managed platform service, show the core Nova Act and Amazon Bedrock AgentCore Browser Tool integration code, highlight a concrete 18-step test workflow, and share best practices and measured results.
The challenge: Enhancing coverage, not replacing what works
Epsilon’s existing UI testing practice was not broken. The team maintained a Playwright-based regression suite that validated functionality across their web applications, and it worked well. Playwright remains their regression backbone today.
The opportunity Epsilon identified was additive, not corrective:
Scripted Playwright tests are effective for deterministic regression checks. However, they are tightly coupled to selectors and page structure. Cosmetic UI changes can break them even when the underlying functionality is sound.
Multiple product teams needed full testing coverage against their own applications. Standing up browser infrastructure, managing dependencies, and integrating with identity systems per team created duplicative effort.
The platform team wanted UI testing to be a managed capability that fit their existing agent model, not a custom CLI that every onboarded team had to operate.
The goal: layer intent-based testing on top of the existing Playwright regression suite. Deliver it as a multi-tenant platform service so that each Epsilon product team could consume through the same API surface they used for every other agent capability.
Why Epsilon chose Amazon Nova Act and the Amazon Bedrock AgentCore Browser Tool
Epsilon evaluated options against two requirements: natural-language test authoring (to complement selector-based Playwright tests) and managed browser infrastructure (to fit their multi-tenant platform model). With Amazon Nova Act combined with Amazon Bedrock AgentCore Browser Tool, Epsilon could address both.
Natural-language steps. Test steps are plain-English instructions executed by Nova Act. They are resilient to cosmetic UI changes and readable by non-engineers. A step like “Confirm the rewards balance is visible” ages far better than a brittle CSS selector.
AWS managed, ephemeral browser sessions. With Amazon Bedrock AgentCore Browser Tool, teams get isolated browser instances with no binaries to ship and no display server to maintain. Amazon Bedrock AgentCore Browser Tool also offers live view for human observation or takeover (useful for CAPTCHAs or multi-factor authentication), session recording to Amazon Simple Storage Service (Amazon S3), and AWS CloudTrail audit, all without additional configuration.
AWS Identity and Access Management (AWS IAM)-based authentication. With Nova Act, you can authenticate through the standard AWS credential chain (the task role). This fits Epsilon’s existing security model without distributing separate API keys.
Cross-account friendly. With Nova Act and Amazon Bedrock AgentCore Browser Tool, you can slot into your existing AWS Security Token Service (AWS STS) AssumeRole provisioning. Each onboarded team can run tests inside their own AWS account under a scoped role. This maintains isolation and auditability.
Epsilon chose Amazon Bedrock AgentCore Browser Tool specifically because it eliminates the operational burden of managing browser binaries, display servers, and session lifecycle. The Agentic Platform team had no interest in owning that infrastructure.
The solution: Architecture and implementation
Epsilon’s solution has three main components: a platform API for creating workflows, a background task runner for executing them, and the Nova Act and Amazon Bedrock AgentCore Browser Tool integration that drives the browser.
Platform architecture
Epsilon’s UI testing capability follows a clear pipeline:
A user creates a workflow through the platform API, specifying a target_url and a list of natural-language steps.
On create, the platform registers a Nova Act workflow definition on AWS.
On execute, a background task runner (Celery, a Python framework for asynchronous job processing) opens an Amazon Bedrock AgentCore Browser Tool browser session. It runs each step through Nova Act over a Chrome DevTools Protocol (CDP) WebSocket (the standard interface for programmatically controlling Chromium browsers), including conditional logic (for example, “if a tour box appears, skip it”).
The system captures a screenshot per step, tracks pass/fail per step, computes an overall pass rate, and stores everything (results JSON, screenshots in Amazon S3, session ID).
A completion hook fires so the result is recorded back into the platform.
Figure 1: Epsilon’s UI Testing Service architecture
Figure 1 shows the layered architecture of Epsilon’s UI Testing Service. User requests flow from the Agent Cloud Frontend through an API Gateway with authentication and permission checks. The API layer (Django REST) exposes endpoints for workflows, executions, automation suites, and stats. The business logic layer includes a Workflow Manager, Execution Orchestrator, and Suite Coordinator. Test jobs are queued in Amazon Simple Queue Service (Amazon SQS) and picked up by the Runner Service running on Amazon Elastic Container Service (Amazon ECS), which contains the Nova Act engine and a headless Chromium browser. Results, screenshots, trajectories, and HTML reports are stored in Amazon S3.
The capability is exposed as a standard agent (ui-test-agent) with two skills:
ui-test-recorder: Explore a scenario interactively and record natural-language steps.
ui-test-executor: Run recorded steps and return structured results.
Onboarded teams consume UI testing the same way they consume any other platform agent. No additional infrastructure to manage. The onboarding process is straightforward. The platform team provisions a cross-account IAM role for the new team, registers their target application URLs, and grants access to the ui-test-agent through the existing platform API. From that point, teams create workflows, trigger executions, and retrieve results through the same interface they already use for other platform capabilities.
The core integration
The Nova Act + Amazon Bedrock AgentCore Browser Tool integration is concise:
import boto3
from bedrock_agentcore.tools.browser_client import browser_session
from nova_act import NovaAct
boto_session = boto3.Session(region_name=region)
with browser_session(region) as client:
ws_url, headers = client.generate_ws_headers()
with NovaAct(
cdp_endpoint_url=ws_url,
cdp_headers=headers,
boto_session=boto_session,
starting_page=url
) as nova_act:
result = nova_act.act(instruction)
This pattern (open a managed browser session, connect through the CDP WebSocket, and drive actions with natural language) is the foundation. Epsilon wraps it with their platform’s multi-tenant orchestration, result capture, and observability layers.
Example: Automating the ‘Create an agent’ flow
To illustrate intent-based testing, here is a representative workflow from Epsilon’s platform. It exercises login, form entry, conditional handling, scrolling, and verification. The following steps highlight the differentiating patterns of Nova Act:
Step
Instruction
1
Type the username and choose Next
2
Enter the password and choose Verify
3
Navigate to Create Agent and select the Design a new specification card
4
If an onboarding tour box appears, choose Skip Tour, then verify the correct page loaded
5
Fill in the agent name and description fields
6
Scroll down until the Goal Statement field is visible, then fill it in
7
If the skills search box is not visible, scroll until it appears. Then search for and add a skill
8
Choose Save, confirm the success prompt, navigate back, and verify the new agent appears in the list
Steps 4 and 7 demonstrate conditional logic: “if an element appears, handle it” and “if a target isn’t visible, scroll until it is.” These patterns would require explicit branching in a traditional framework. Nova Act handles them naturally through language understanding.
Runtime isolation
Epsilon runs UI tests in a dedicated runner service (a FastAPI sidecar) that pins nova-act 3.x with Workflow and IAM authentication support, plus the Amazon Bedrock AgentCore Browser Tool client. This keeps dependencies separate from the main backend so they don’t collide with the Strands agent stack. The worker falls back to in-process execution if the runner is disabled, providing resilience during deployments.
Best practices
Based on their experience building UI testing as a platform capability, the Epsilon team recommends:
1. Write steps as intent, not mechanics
GOOD: "Confirm the rewards balance is visible"
BAD: await page.locator('#rewards-balance-container > span.amount').toBeVisible()
Intent-based steps survive UI redesigns. Product managers and quality assurance (QA) leads who might not write code can review them directly.
2. Isolate the Nova Act runtime
Pin Nova Act and Amazon Bedrock AgentCore Browser Tool dependencies in a dedicated service or container. Epsilon learned that the signing endpoint for Nova Act targets us-east-1 regardless of the browser session’s region. Running it in a separate service with its own dependency lockfile prevents hard-to-debug conflicts.
3. Reuse recorded trajectories to cut cost
Epsilon uses trajectory retries in draft state, saves the successful trajectory, and replays it in active state. Repeat runs skip redundant large language model (LLM) “thinking,” reducing both latency and cost for regression-style repeated executions.
4. Design for multi-tenancy from day one
Use cross-account AssumeRole with scoped IAM policies. Each tenant’s tests run under their own role in their own account. This provides isolation, auditability, and failure scope containment without custom infrastructure per team.
5. Lean on managed observability
With Amazon Bedrock AgentCore Browser Tool, teams get live view, session recording, and AWS CloudTrail integration. Epsilon uses these built-in capabilities instead of building custom observability, reducing maintenance and giving compliance teams familiar audit surfaces.
6. Account for Amazon Bedrock AgentCore Browser Tool viewport behavior
When prompting Nova Act steps, account for the browser viewport defaults of Amazon Bedrock AgentCore Browser Tool. Steps that reference scrolling (for example, “scroll down until the Goal Statement textbox is visible”) verify that Nova Act handles content in the lower portion of the page correctly.
Results and impact
Epsilon’s UI testing capability is operational across multiple teams, with the multi-tenant architecture proven in production.
Dimension
Amazon Nova Act
Playwright (equivalent)
Lines authored
18 natural-language steps
~80-150 lines of code
Selector/DOM inspection
None
Required per interactive step
Authoring time (per workflow)
~5-10 minutes
~30-90 minutes
Effort ratio
Baseline
4-6x more effort
Here are the measured outcomes:
4-6x faster test authoring (based on Epsilon’s internal benchmarks). A representative 18-step workflow took 5–10 minutes to author with Nova Act, compared to 30–90 minutes for the equivalent Playwright script (80–150 lines of code). Each interactive step in the Playwright script requires inspecting the DOM, choosing a stable selector, and coding explicit waits, assertions, and branching for conditional cases. Nova Act replaces that per-step overhead with 18 natural-language instructions and zero selector or DOM inspection, with conditional logic (such as the tour-box and scroll-until-visible steps) expressed in plain English.
100 percent pass rate on trajectory replay (based on Epsilon’s internalbenchmarks). After a workflow passes the initial explore phase (typically 4–5 prompt iterations), Epsilon saves the successful trajectory and replays it deterministically. Saved trajectories achieve a 100 percent pass rate across repeated runs.
Lower barrier to test authoring. Steps read like plain English. Team members beyond core test engineers can read, review, and propose tests, broadening ownership of quality.
Built-in audit trail. AWS CloudTrail integration and Amazon Bedrock AgentCore Browser Tool session recording made debugging and compliance conversations easier. This was a benefit the team did not initially set out to achieve.
Zero per-team infrastructure overhead. Onboarded teams get UI testing through the same API surface as every other platform agent. No browser binaries, no Selenium grid, no display servers to manage.
Pass/fail visibility per step. Screenshot capture at each step provides granular debugging context, reducing mean time to diagnose failures.
“Nova Act let us turn UI testing from a brittle, selector-chasing chore into a managed platform capability. Our tests now describe intent in plain English, run on AWS managed browsers, and every product team we onboard gets reliable testing without additional configuration.”
— Epsilon Agentic Platform Team
Learn more
Epsilon’s Agentic Platform team demonstrated how to deliver resilient, intent-driven UI testing as a managed service using Amazon Nova Act and Amazon Bedrock AgentCore Browser Tool. You can apply the same pattern to your own multi-tenant platform to eliminate browser infrastructure overhead and make test authoring accessible to non-engineers.
If you want to build similar intent-driven UI testing capabilities with Amazon Nova Act and Amazon Bedrock AgentCore Browser Tool, here are resources to get started: