Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] [Tests - E2E] Utilisation de Playwright plutôt que Cypress #3037

Draft
wants to merge 36 commits into
base: develop
Choose a base branch
from

Conversation

emilschn
Copy link
Collaborator

@emilschn emilschn commented Sep 13, 2024

Ticket

#3036

Description

Test d'utilisation de Playwright à la place de Cypress pour les tests e2e.
https://playwright.dev/docs/codegen#recording-a-test

Objectif : avoir un deuxième job non-bloquant qui fait les tests e2e dans la CI.

Attention

Dans l'état des lieux actuels, la PR n'est pas fonctionnelle.

  • Des mises à jour ont été apportées dans npm
  • Par répercution, le DatePicker de Vue ne fonctionne plus actuellement

Méthodes testées

J'ai testé ces méthodes sans que ce ne soit fonctionnel pour l'instant

La méthode par défaut

C'est celle qui est commentée en bas du fichier npx playwright test
Je n'ai pas réussi à trouver d'URL accessible à appeler pour faire le test, malgré mes recherches

La méthode Dialog

MTES-MCT/dialog@42da526
Trouvé par Saidi
C'est la méthode qui est dans le dev actuel : tout faire passer par docker, via les commandes Make
C'est pas loin de fonctionner, mais la CI rencontre une erreur 500 au moment de l'appel

Changements apportés

  • Ajout du fichier de configuration de playwright à la racine playwright.config.ts
    • En conséquence, ajout de commandes Makefile pour avoir des commandes accessibles via la CI
  • Ajout du fichier de job GitHub playwright.yml
  • Ajout du fichier de test front.spec.ts
  • Incrémentation de versions de certains packages npm pour compatibilité

Pré-requis

Avec tout ça, je ne sais plus si il est nécessaire de réinstaller quelque chose en local

J'avais commencé par ça : npm init playwright@latest
Je pense qu'il y a une partie installation locale dedans...
Mais on il ne faudrait pas que ça écrase l'existant...
A voir ce que ça fait :)

Pour tester en local, après installation : npx playwright test

Tests

  • CI fonctionnelle
  • Tour sur la plateforme pour vérifier que tout fonctionne, en prêtant une attention particulière aux composants Vue (formulaire, liste signalements, stats FO et BO)

@emilschn emilschn changed the title [Tests - E2E] Utilisation de Playwright plutôt que Cypress [WIP] [Tests - E2E] Utilisation de Playwright plutôt que Cypress Sep 13, 2024
@emilschn emilschn force-pushed the feature/3036-playwright branch 2 times, most recently from c679542 to a728196 Compare September 20, 2024 13:34
Copy link

sonarcloud bot commented Sep 30, 2024

Quality Gate Failed Quality Gate failed

Failed conditions
1 Security Hotspot

See analysis details on SonarCloud

@sfinx13 sfinx13 marked this pull request as draft October 30, 2024 08:12
Copy link

sonarcloud bot commented Nov 6, 2024

Quality Gate Failed Quality Gate failed

Failed conditions
1 Security Hotspot

See analysis details on SonarCloud

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant