e2e-qa-tester

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

E2E QA Tester

E2E QA 测试器

Ejecuta pruebas end-to-end y QA manual usando Playwright MCP para verificar funcionalidades recien implementadas.
使用Playwright MCP执行端到端(E2E)测试和手动QA,以验证刚实现的功能。

Flujo de Trabajo

工作流程

1. Identificar la Tarea a Probar

1. 确定要测试的任务

Antes de ejecutar cualquier prueba, revisa el historial de la conversacion actual para identificar la ultima tarea completada:
Busca en los mensajes recientes:
- Tareas marcadas como "completadas" o "done"
- Implementaciones finalizadas
- Features agregadas o modificadas
- Bug fixes aplicados
Si no puedes identificar claramente la tarea, pregunta al usuario: "¿Que funcionalidad o flujo debo probar?"
在执行任何测试之前,查看当前对话历史以确定最后完成的任务:
在最近的消息中查找:
- 标记为“已完成”的任务
- 已完成的实现
- 新增或修改的功能
- 已修复的Bug
如果无法明确识别任务,请询问用户:“我应该测试哪个功能或流程?”

2. Buscar Credenciales de Prueba

2. 查找测试凭证

SIEMPRE antes de intentar login, busca credenciales de prueba:
powershell
undefined
始终在尝试登录前查找测试凭证:
powershell
undefined

Buscar archivo de credenciales en el proyecto

在项目中查找凭证文件

Get-ChildItem -Path . -Filter "CREDENTIALS.md" -Recurse

Ubicaciones comunes:
- `CREDENTIALS.md` (raiz del proyecto)
- `docs/CREDENTIALS.md`
- `.credentials/CREDENTIALS.md`
- `testing/CREDENTIALS.md`

Formato esperado en CREDENTIALS.md:
```markdown
Get-ChildItem -Path . -Filter "CREDENTIALS.md" -Recurse

常见位置:
- `CREDENTIALS.md`(项目根目录)
- `docs/CREDENTIALS.md`
- `.credentials/CREDENTIALS.md`
- `testing/CREDENTIALS.md`

CREDENTIALS.md的预期格式:
```markdown

Usuario Admin

管理员用户

  • Email: admin@test.com
  • Password: admin123
  • 邮箱: admin@test.com
  • 密码: admin123

Usuario Regular

普通用户

  • Email: user@test.com
  • Password: user123

**Si NO encuentras CREDENTIALS.md:**
1. Detente y pregunta al usuario por las credenciales
2. NO intentes adivinar ni usar credenciales genericas
  • 邮箱: user@test.com
  • 密码: user123

**如果未找到CREDENTIALS.md**:
1. 停止操作并向用户询问凭证
2. 不要尝试猜测或使用通用凭证

3. Conectar a la Aplicacion

3. 连接到应用

Intenta conectar al puerto por defecto:
powershell
undefined
尝试连接默认端口:
powershell
undefined

Verificar si puerto 5173 esta en uso

检查5173端口是否在使用中

Test-NetConnection -ComputerName 127.0.0.1 -Port 5173 -InformationLevel Quiet

- **Si el puerto 5173 esta ocupado**: Usar esa conexion
- **Si el puerto 5173 NO esta en uso**: 
  1. Verificar si hay otro puerto comun (3000, 4200, 8080)
  2. Si no hay ningun puerto activo, preguntar al usuario
Test-NetConnection -ComputerName 127.0.0.1 -Port 5173 -InformationLevel Quiet

- **如果5173端口被占用**:使用该连接
- **如果5173端口未被占用**:
  1. 检查是否有其他常用端口(3000、4200、8080)
  2. 如果没有活跃端口,询问用户

4. Confirmacion Pre-Prueba (OBLIGATORIO)

4. 测试前确认(必填)

Antes de ejecutar cualquier prueba, presenta al usuario:
undefined
在执行任何测试之前,向用户展示:
undefined

Plan de Prueba

测试计划

Tarea identificada: [descripcion de la tarea completada]
Flujo a probar:
  1. [Paso 1]
  2. [Paso 2]
  3. [Paso 3]
Credenciales a usar: [rol/usuario del CREDENTIALS.md]
URL de inicio: http://127.0.0.1:[puerto]
¿Procedo con esta prueba? (s/n)

**NO proceder hasta recibir confirmacion explicita del usuario.**

Si el usuario rechaza:
1. Pregunta que debe hacer diferente
2. Ajusta el plan segun sus indicaciones
3. Vuelve a pedir confirmacion
已识别的任务: [已完成任务的描述]
要测试的流程:
  1. [步骤1]
  2. [步骤2]
  3. [步骤3]
将使用的凭证: [CREDENTIALS.md中的角色/用户]
是否继续执行此测试?(是/否)

**在收到用户明确确认前,请勿继续。**

如果用户拒绝:
1. 询问需要做出哪些调整
2. 根据用户指示修改计划
3. 再次请求确认

5. Ejecutar la Prueba

5. 执行测试

Una vez confirmado, usa Playwright MCP para ejecutar la prueba:
确认后,使用Playwright MCP执行测试:

Iniciar Navegador (headless)

启动浏览器(无头模式)

playwright_browser_navigate con url http://127.0.0.1:[puerto]
playwright_browser_navigate con url http://127.0.0.1:[puerto]

Si hay Login requerido

如果需要登录

  1. Tomar snapshot para ver estado actual
  2. Identificar campos de email/usuario y password
  3. Completar formulario con credenciales del CREDENTIALS.md
  4. Enviar formulario
  5. Verificar login exitoso (snapshot, buscar elemento de exito)
  1. 拍摄快照查看当前状态
  2. 识别邮箱/用户名和密码字段
  3. 使用CREDENTIALS.md中的凭证填写表单
  4. 提交表单
  5. 验证登录是否成功(快照、查找成功元素)

Ejecutar Flujo de Prueba

执行测试流程

  1. Navegar a la funcionalidad objetivo
  2. Interactuar con elementos segun el flujo identificado
  3. Tomar snapshots en puntos clave
  4. Verificar resultados esperados
  1. 导航到目标功能
  2. 根据已识别的流程与元素交互
  3. 在关键节点拍摄快照
  4. 验证预期结果

Comandos Playwright Utiles

常用Playwright命令

AccionHerramienta
Ver estado actual
playwright_browser_snapshot
Navegar
playwright_browser_navigate
Click
playwright_browser_click
Escribir texto
playwright_browser_type
Seleccionar dropdown
playwright_browser_select_option
Llenar formulario
playwright_browser_fill_form
Esperar
playwright_browser_wait_for
Screenshot
playwright_browser_take_screenshot
操作工具
查看当前状态
playwright_browser_snapshot
导航
playwright_browser_navigate
点击
playwright_browser_click
输入文本
playwright_browser_type
选择下拉选项
playwright_browser_select_option
填写表单
playwright_browser_fill_form
等待
playwright_browser_wait_for
截图
playwright_browser_take_screenshot

6. Reportar Resultados

6. 报告结果

Al finalizar, presenta un reporte claro:
markdown
undefined
完成后,呈现清晰的报告:
markdown
undefined

Resultado de Prueba E2E

E2E测试结果

Estado: [PASO / FALLO]
Tarea probada: [descripcion]
Pasos ejecutados:
  1. [Paso 1] - [OK/FALLO: razon]
  2. [Paso 2] - [OK/FALLO: razon]
  3. [Paso 3] - [OK/FALLO: razon]
Resultado final: [Descripcion de que paso, si hubo errores, comportamiento observado]
Evidencia:
  • [Screenshots tomados o pasos verificados]
undefined
状态: [通过/失败]
测试任务: [描述]
已执行步骤:
  1. [步骤1] - [通过/失败:原因]
  2. [步骤2] - [通过/失败:原因]
  3. [步骤3] - [通过/失败:原因]
最终结果: [描述通过的情况、是否有错误、观察到的行为]
证据:
  • [拍摄的截图或已验证的步骤]
undefined

Casos de Uso Comunes

常见用例

Probar Formulario Nuevo

测试新表单

  1. Identificar campos del formulario
  2. Completar con datos de prueba validos
  3. Enviar y verificar respuesta exitosa
  4. Probar validaciones (campos vacios, formatos invalidos)
  1. 识别表单字段
  2. 使用有效的测试数据填写
  3. 提交并验证成功响应
  4. 测试验证规则(空字段、无效格式)

Probar Flujo de Autenticacion

测试认证流程

  1. Verificar pantalla de login
  2. Usar credenciales de CREDENTIALS.md
  3. Verificar redireccion post-login
  4. Verificar elementos visibles solo para usuarios autenticados
  1. 验证登录页面
  2. 使用CREDENTIALS.md中的凭证
  3. 验证登录后的重定向
  4. 验证仅对已认证用户可见的元素

Probar CRUD

测试CRUD操作

  1. Create: Crear nuevo registro, verificar aparicion en lista
  2. Read: Verificar datos mostrados correctamente
  3. Update: Editar registro, verificar cambios persistidos
  4. Delete: Eliminar registro, verificar desaparece de lista
  1. 创建: 创建新记录,验证是否出现在列表中
  2. 读取: 验证显示的数据是否正确
  3. 更新: 编辑记录,验证更改是否持久化
  4. 删除: 删除记录,验证是否从列表中消失

Probar Feature Toggle

测试功能开关

  1. Verificar estado antes de activar feature
  2. Activar/trigger la feature
  3. Verificar estado despues (UI visible, comportamiento cambiado)
  1. 验证激活功能前的状态
  2. 激活/触发功能
  3. 验证激活后的状态(UI可见、行为改变)

Manejo de Errores

错误处理

Si la aplicacion no carga

如果应用无法加载

  1. Verificar que el servidor este corriendo
  2. Verificar URL y puerto correctos
  3. Reportar al usuario
  1. 验证服务器是否在运行
  2. 验证URL和端口是否正确
  3. 向用户报告

Si el login falla

如果登录失败

  1. Verificar credenciales en CREDENTIALS.md
  2. Verificar que el formulario tenga los campos correctos
  3. Reportar error especifico al usuario
  1. 验证CREDENTIALS.md中的凭证
  2. 验证表单是否有正确的字段
  3. 向用户报告具体错误

Si un elemento no se encuentra

如果找不到元素

  1. Tomar snapshot para ver estado actual
  2. Buscar selectores alternativos
  3. Si persiste, reportar al usuario con evidencia
  1. 拍摄快照查看当前状态
  2. 寻找替代选择器
  3. 如果问题持续,向用户报告并提供证据

Si hay errores de consola

如果控制台有错误

  1. Usar
    playwright_browser_console_messages
    para obtener errores
  2. Incluir en reporte de resultados
  1. 使用
    playwright_browser_console_messages
    获取错误信息
  2. 将其包含在测试结果报告中

Notas Importantes

重要说明

  • SIEMPRE usar modo headless (--headed=false) para no interferir con el usuario
  • SIEMPRE buscar CREDENTIALS.md antes de pedir credenciales
  • SIEMPRE pedir confirmacion antes de ejecutar pruebas
  • NUNCA crear, modificar o eliminar usuarios de prueba
  • NUNCA usar IPv6, siempre 127.0.0.1
  • 始终使用无头模式(--headed=false),避免干扰用户
  • 始终在请求凭证前查找CREDENTIALS.md
  • 始终在执行测试前请求确认
  • 切勿创建、修改或删除测试用户
  • 切勿使用IPv6,始终使用127.0.0.1