italia / design-angular-kit

Il toolkit Angular conforme alle linee guida di design per i servizi web della PA.
https://italia.github.io/design-angular-kit
BSD 3-Clause "New" or "Revised" License
71 stars 30 forks source link

Restore e2e testing #150

Closed astagi closed 1 year ago

astagi commented 1 year ago

Since Protractor has been declared deprecated and it will continue to run until the end of 2022 (Angular 15 will be the last update) we need to

denisbarca commented 1 year ago

Per questo issue serve ancora qualcuno? Vedendo dai commit e dalle altre issue aperte si sta andando verso la direzione di unit test, piuttosto che e2e, o si vuole avere entrambi?

cri99 commented 1 year ago

Ciao @denisbarca, certo! L'ideale è avere entrambi i tipi di test, però per i test e2e non si deve più usare Protractor. Ci potresti dare una mano con Cypress? Oppure conosci un altro tool valido?

denisbarca commented 1 year ago

Per ragioni lavorative ho usato Selenium a lungo, ma non è assolutamente da usare in questo caso e fate benissimo ad indirizzarvi verso altri tool. Cypress può essere una valida alternativa, ma ultimamente sto scoprendo meglio (ancora un wip) Playwright: su Youtube ed il web in generale ci sono anche molti confronti tra i due, in vari modi possono essere equivalenti. Comunque, a partire dai prossimi giorni, al netto dei miei impegni lavorativi, comincerò a vedere il tutto, sarà una bella palestra anche per me (che sia Playwright o Cypress, mi riservo questa scelta appena visti per bene i test già scritti).

astagi commented 1 year ago

Grazie @denisbarca molto interessante anche Playwright, non sarebbe male da provare.. @Puppo sta scrivendo una serie molto interessante sul tool https://dev.to/puppo/series/20832

Appena hai fatto le tue considerazioni facci sapere ✌🏻

Puppo commented 1 year ago

Vi lascio i miei 2cent per la scelta. Al netto che per lo più sono quasi equivalenti sulle funzionalità, playwright offre la possibilità di scrivere i test non solo in Ts ma anche in phyton, Java e .Net! Guardando il progetto questo non credo che interessi molto a voi però 🙂 quindi 🙂 Secondo la mia personale opinione Playwright è più facile da gestire per fare i test su più browser tipo Chrome FireFox e Safari Scrivere i test con uno o con l'altro è semplice quasi allo stesso modo. Cypress ha un po' più di anni ma per quello che ho visto fino ad ora non ha nessuna grande differenza con Playwright. I components test su Playwright sono in beta però Angular non c'è tra i framework garantiti (almeno per ora, speriamo arrivi per il futuro). C'è il modo di farli comunque con un trick passando per storybook in questo momento. Ne ha parlato una ragazza all'angularday quest'anno, ma credo che i video non siano ancora disponibili, però qui potete trovare il repo di esempio usato. Le sintassi sono quasi simili. Altri bit che vi posso lasciare mi pare di non averne. La scelta come al solito non è mai scegliamo il migliore perché come immagino sappiate il migliore non esiste. Quello che esiste è il tool giusto per il vostro progetto, con i pro e contro del caso ovviamente 🙂 Se vi serve altro sapete dove trovarmi 🙂

astagi commented 1 year ago

Grazie @Puppo della panoramica! Molto interessante, peccato per la parte Angular! Lascio a @denisbarca le dovute considerazioni se vuol provare anche con questo workaround..

Puppo commented 1 year ago

Se avete bisogno di info su cypress le persone che hanno + conoscenza e che vi possono aiutare sono: @NoriSte e @fabiobiondi

astagi commented 1 year ago

Perfetto! Grazie @Puppo ! Per Cypress posso dare mano anch'io se volete l'ho integrato poco tempo fa su una libreria Vie che mantengo https://github.com/oruga-ui/oruga/pull/312

stale[bot] commented 1 year ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. Please read https://github.com/italia/design-angular-kit/discussions/127.

stale[bot] commented 1 year ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. Please read https://github.com/italia/design-angular-kit/discussions/127.