AI Skill Report Card

PlannerVersi E2E QA Testing

B-72·May 6, 2026·Source: Web
13 / 15
JavaScript
// Login and navigate to page await page.goto('http://localhost:3000'); await page.fill('#email', 'teste@vp6.com.br'); await page.fill('#password', 'teste2026'); await page.click('[type="submit"]'); await page.waitForSelector('.ant-menu'); // Navigate to target page await page.click('text=Target Page'); await page.waitForSelector('.ant-table, .ant-form'); // Validate initial load const networkRequests = await page.evaluate(() => window.g_app._store.getState() );
Recommendation
Remove technical jargon from description - 'React/UmiJS/DVA frontend, Redux state, Django/DRF backend' adds unnecessary complexity
12 / 15

Pre-execution Checklist

  • Parse page name from user input
  • Parse scope (FRONTEND/BACKEND/AMBOS)
  • Parse credentials (default: teste@vp6.com.br)
  • Parse organization if required
  • Parse specific functionalities to test
  • Display confirmation block

Execution Order

  • Authentication
  • Route mapping in config/routes.ts
  • Component mapping
  • Extract endpoints and Redux states
  • Navigate to page
  • Select enterprise/version/module
  • Validate initial load (Network + Redux + DOM)
  • Execute functional tests (CRUD)
  • Force fresh refetch validation
  • Version/module switching regression
  • Generate final report
Recommendation
Quick Start should show a complete minimal test execution from start to finish, not just authentication snippets
15 / 20

Example 1: Frontend-only test Input: "teste a tela Associativo frontend" Output: Full UI flow validation with Redux state checking

Example 2: Backend-only test Input: "valide Taxa de Administração backend only" Output: Direct API testing without browser interaction

Example 3: Full E2E test Input: "execute teste E2E da página Curva de Vendas" Output: Complete frontend + backend validation with persistence checks

Recommendation
Examples need concrete input/output pairs with actual API responses and Redux state values, not just 'Output: Full UI flow validation'

React Input Helpers for Masked Fields

JavaScript
window.__setMaskedCurrency = (selector, value) => { const el = document.querySelector(selector); const setter = Object.getOwnPropertyDescriptor( HTMLInputElement.prototype, 'value' ).set; setter.call(el, Math.round(Number(value) * 100).toString()); el.dispatchEvent(new Event('input', { bubbles: true })); el.dispatchEvent(new Event('change', { bubbles: true })); };

Table Reading Helper

JavaScript
() => Array.from(document.querySelectorAll('.ant-table-row')).map(row => ({ key: row.getAttribute('data-row-key'), cells: Array.from(row.querySelectorAll('td')).map(cell => cell.innerText.trim()) }))

Redux State Validation

JavaScript
window.g_app._store.getState()

Network + Redux + DOM Cross-Validation

Always validate data consistency across all three layers before marking tests as passed.

  • Never trust UI success messages alone - Always validate persistence with fresh refetch
  • Don't use fixed waits - Wait for specific elements or network requests
  • Don't test with production data - Create and cleanup test data
  • Don't skip version/module dependency validation - Many PlannerVersi pages depend on these selectors
  • Don't ignore Redux state - UI might show cached data while backend failed
  • Don't test CRUD without persistence validation - Save success ≠ data persisted

Report Structure

Markdown
undefined
  • Escopo: [FRONTEND/BACKEND/AMBOS]
  • Endpoints mapeados: [count]
  • Bugs encontrados: [count]
  • Status geral: [Aprovado/Aprovado com ressalvas/Reprovado]

[✓/✗] Autenticação [✓/✗] Carga inicial - Network [✓/✗] CRUD - Adição [✓/✗] CRUD - Edição
[✓/✗] CRUD - Deleção [✓/✗] Persistência após refetch


Generate `correcoes.txt` file only when bugs are found, with specific file paths and code diffs for fixes.
0
Grade B-AI Skill Framework
Scorecard
Criteria Breakdown
Quick Start
13/15
Workflow
12/15
Examples
15/20
Completeness
10/20
Format
12/15
Conciseness
10/15