Aller au contenu principal

Auditoria E2E — Baseline iaw-platform

Data: 2026-04-15


1. Spec Files

Total: 70 ficheiros .spec.ts

Distribuídos por 29 suites numeradas (excluindo fixtures/, helpers/, scripts/).


2. Suites (29 suites activas)

SuiteNomeDomínio
00-auth-loginlogin-flow-admin, login-flow-clientAuth básica
00-authauth-flow, auth-forgot-password, auth-navigation, auth-register-validation, public-pagesAuth completa + páginas públicas
10-pricing-checkoutcheckout-flow, legal-pages, pricing-flowPricing + checkout
20-portalportal-flow, portal-invoices-detail, portal-payments, portal-profile-edit, portal-quotes, portal-rgpd-export, portal-suggestions, portal-tickets, portal-affiliatePortal cliente
30-adminadmin-flow, admin-clients-crud, admin-billing-detail, admin-email-audit, admin-fiscal-detail, admin-guide, admin-products-tickets, admin-promotions, admin-quotes-infra-suggestions, admin-reports-settings, admin-stripe-page, admin-teamAdmin completo
40-stripestripe-checkout-flow, stripe-connect-dashboard, stripe-connect-onboarding, stripe-error-cases, stripe-responsiveStripe Connect
50-subscriptionsubscription-management, subscription-responsiveSubscriptions
60-full-flowsadmin-complete-flow, connect-onboarding-flow, full-payment-failure, full-purchase-flow, full-refund-flow, portal-complete-flow, subscription-lifecycle-flow, subscription-reactivation-flowFluxos completos E2E
70-ux-componentscookie-banner, currency-switcher, language-switcher, onboarding-tourUX components
80-checkout-completecheckout-completeCheckout detalhado
85-data-integritydata-integrityIntegridade de dados
86-admin-services-lifecycleadmin-services-lifecycleLifecycle serviços admin
87-subscription-lifecyclesubscription-lifecycleLifecycle subscriptions
88-admin-dashboard-deepdashboard-deepDashboard admin profundo
89-portal-invoices-deepinvoices-deepFacturas portal profundo
90-resilienceresilienceResiliência (erros, timeouts)
91-error-handlingerror-handlingTratamento de erros
92-accessibilityaccessibilityAcessibilidade (axe)
93-visual-integrityvisual-integrityIntegridade visual
94-currency-cross-pagecurrency-cross-pageMoeda cross-page
95-visual-regressionvisual-regressionRegressão visual
96-admin-churnadmin-churnChurn ML + alertas
97-admin-pricingadmin-pricingPricing admin
98-admin-retentionadmin-retentionRetenção admin
99-portal-chatportal-chatChat portal
100-onboarding-assistantonboarding-assistantAssistente onboarding
101-admin-predictiveadmin-predictiveAdmin preditivo
102-docs-guidedocs-guideGuia documentação
103-customer-journeycustomer-journeyJornada do cliente

3. Cobertura Funcional

As 70 specs cobrem os seguintes domínios:

DomínioSpecsNotas
Autenticaçãoauth-flow, login-flow-admin, login-flow-client, auth-navigation, auth-forgot-password, auth-register-validationAdmin + cliente, recuperação password
Site Públicopublic-pages, pricing-flow, legal-pagesLanding, pricing, termos
Checkoutcheckout-flow, checkout-complete, full-purchase-flow, full-payment-failure, full-refund-flowFluxo completo pagamento
Portal Clienteportal-flow, portal-invoices-detail, portal-payments, portal-profile-edit, portal-quotes, portal-tickets, portal-affiliate, portal-rgpd-export, portal-suggestions, portal-complete-flow, invoices-deepAutoatendimento completo
Adminadmin-flow, admin-clients-crud, admin-billing-detail, admin-email-audit, admin-fiscal-detail, admin-promotions, admin-reports-settings, admin-stripe-page, admin-team, admin-guide, admin-products-tickets, admin-quotes-infra-suggestions, admin-complete-flow, dashboard-deepGestão completa
Stripe Connectstripe-checkout-flow, stripe-connect-dashboard, stripe-connect-onboarding, stripe-error-cases, stripe-responsive, connect-onboarding-flowKYC, dashboard, errors
Subscriptionssubscription-management, subscription-responsive, subscription-lifecycle, subscription-lifecycle-flow, subscription-reactivation-flowLifecycle completo
UX Componentscookie-banner, currency-switcher, language-switcher, onboarding-touri18n, moeda, cookies, tour
Qualidadeaccessibility, visual-integrity, visual-regression, resilience, error-handlingAxe, visual, resiliência
Dadosdata-integrity, currency-cross-pageIntegridade, moeda consistente
ML/IAadmin-churn, admin-pricing, admin-retention, admin-predictive, onboarding-assistantFuncionalidades preditivas
Docsdocs-guide, customer-journeyGuia utilizador

Total estimado de test cases: ~427 (contagem grep de test( em todos os specs)


4. Screenshots Gerados

Total: 2.522 ficheiros .png em frontend/public/docs-assets/

Screenshots capturados automaticamente via takeStepScreenshot() com fullPage: true.


5. Sidecar JSON Metadata

Total: 105 ficheiros .json em frontend/public/docs-assets/

Metadata com contexto de negócio, accessibility info, e dados de marketing (formato 40+ colunas).


6. Vídeos Capturados

Total: 92 ficheiros (.mp4 ou .webm) em frontend/

Vídeos tutorial gerados por FFmpeg a partir de screenshots (0.5fps = 2s por screenshot), H.264.


7. Viewport Matrix

29 configs analisados:

CategoriaSuitesViewportsDetalhe
3 viewports (mobile+tablet+desktop)19mobile (390×844) + tablet (810×1080) + desktop (1280×900)Suites 00, 10, 20, 30, 40, 50, 60, 70, 80, 95, 96, 97, 98, 99, 100, 101, 102, 103
Desktop only10desktop (1280×900) apenasSuites 85–94

Suites com matriz completa: 19/29 (66%)

Gap: suites 85–94 (data-integrity, services-lifecycle, subscription-lifecycle, dashboard-deep, invoices-deep, resilience, error-handling, accessibility, visual-integrity, currency-cross-page) — desktop only.


8. Locale Testing

Todas as 70 specs referenciam i18n de alguma forma (grep por language\|locale\|i18n\|switcher retorna 70 ficheiros).

SpecCobertura de idiomas
language-switcher.spec.ts6 idiomas explícitos: pt, en, fr, es, it, de via LANG_CODES. Testa switch, persistência localStorage (iaw_language), reload
checkout-complete.spec.tsReferência a pt-PT com Intl.NumberFormat para formatação de preços
Demais specsTestam UI na língua default (PT), sem múltiplas passagens por idioma

Observação: Não existe ainda um mecanismo de passagem automática por 6 idiomas em todas as suites (apenas o language-switcher testa o mecanismo de troca; validação de strings traduzidas nos outros specs é implícita via UI).


9. Pipeline CI — Jobs E2E

Total de jobs E2E no .gitlab-ci.yml: 80 (excluindo prepare:e2e)

AmbienteJobsallow_failureBloqueia promoção?
dev26true (template .e2e_platform_dev)Não — informativo (§17)
uat26falseSim — BLOQUEANTE
staging26falseSim — BLOQUEANTE
scheduled2N/AAlertas
prod0dry-run via scheduled

Templates usados:

  • .e2e_platform — base: tags platform-ci, retry max 1, artifacts 7 dias
  • .e2e_platform_dev — extends .e2e_platform + allow_failure: true

10. Alertas / Gaps Detectados

#SeveridadeDescrição
1P210 suites (85–94) têm apenas viewport desktop — falta mobile+tablet
2P225 ocorrências de test.skip em 5 ficheiros: admin-team, invoices-deep, language-switcher, onboarding-tour, subscription-lifecycle
3P3Locale testing multi-idioma explícito apenas em language-switcher.spec.ts — restantes specs não percorrem os 6 idiomas
4P3Prod sem jobs E2E dedicados — apenas via e2e:scheduled:prod (2 jobs, canary)
5INFODev E2E allow_failure: true conforme §17 — correcto por design

Resumo Executivo

Spec files: 70
Suites activas: 29
Test cases (~): 427
Screenshots PNG: 2.522
Metadata JSON: 105
Vídeos: 92
Viewport full (3x): 19/29 suites (66%)
Locale testing: 1 spec explícito (language-switcher) + implícito nos demais
CI jobs E2E: 80 total (26 dev + 26 uat + 26 staging + 2 scheduled)
allow_failure true: dev apenas (por design §17)
test.skip: 25 ocorrências em 5 specs (P2 — investigar)