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

Migrar la version de junit #1731

Open
Guusy opened this issue Aug 4, 2019 · 10 comments
Open

Migrar la version de junit #1731

Guusy opened this issue Aug 4, 2019 · 10 comments

Comments

@Guusy
Copy link
Contributor

Guusy commented Aug 4, 2019

Segun lo hablado en este PR, estaria bueno migrar la version de junit hacia 5.

Ya que esta contiene features copada como DisplayName y Nested que van a hacer que nuestros tests sean mas legibles al momento de correrlos/leerlos.

@fdodino
Copy link
Collaborator

fdodino commented Dec 5, 2019

@Juancete ya que estamos haciendo la migración a dev-2.0, por ahí convendría probar de meter la dependencia a JUnit 5 y ver si no se rompen los tests (no se si serán retrocompatibles).

@Juancete
Copy link
Contributor

Juancete commented Dec 5, 2019

@fdodino Ok, puedo hacer la prueba y vemos los resultados

@fdodino
Copy link
Collaborator

fdodino commented Dec 6, 2019

Acabo de linkear tres artículos:

En el primer artículo se menciona que es totalmente retrocompatible JUnit 5 con Junit 4 (e incluso con JUnit 3) así que sería iterativa la migración de los 1300 tests (en lugar de 2400)

@fdodino
Copy link
Collaborator

fdodino commented Dec 6, 2019

Y efectivamente es retrocompatible por el componente JUnit Vintage. La doc oficial es https://junit.org/junit5/docs/current/user-guide/. A mí mucho no me gusta cómo pasaron las annotations a assertions con lambdas (estilo expected ahora se envuelve en una lambda, medio como en Wollok), pero bueh... seguiré pispeando.

@Juancete
Copy link
Contributor

Juancete commented Dec 6, 2019

Revisando como migrar dentro del proyecto me encuentro en el POM del proyecto test estas líneas

				<dependencies>
					<!-- Force using the latest JUnit 47 provider -->
					<dependency>
						<groupId>org.apache.maven.surefire</groupId>
						<artifactId>surefire-junit47</artifactId>
						<version>2.8</version>
					</dependency>
				</dependencies>

Y buscando que dependencia encontré surefire-junit5 en versión ALPHA del año 2016. Me metió un poco de miedo esto.

Pero seguí buscando y encontré esta página de surefire que indica que si subimos las versión, parece manejar ambos mundos sin problemas, por lo tanto volaría las líneas que fuerzan a trabajar con una versión específica de JUnit. Creo que voy por este camino para la prueba.

@fdodino
Copy link
Collaborator

fdodino commented Dec 6, 2019

Y una más: https://leeturner.me/posts/building-a-camel-case-junit5-displaynamegenerator/ , con la annotation DisplayNameGenerator.Standard automáticamente convertís camelCase a espacios, aunque los números se los lleve puestos, en ese artículo le puso onda esta persona para que no pase, e incluso le metió emojis.

@Juancete
Copy link
Contributor

Juancete commented Dec 6, 2019

Dejo un link interesante para manejar la migración con maven
https://wiki.eclipse.org/Tycho/How_Tos/JUnit5

@Juancete
Copy link
Contributor

Juancete commented Dec 9, 2019

@Juancete
Copy link
Contributor

Juancete commented Dec 9, 2019

Xpect doesn't support JUnit 5.
eclipse/Xpect#262

We have to go back to JUnit 4

@Juancete
Copy link
Contributor

https://hub.packtpub.com/testing-xtext-and-xtend/

Buen link que explica un poco como se testea el lenguaje

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

No branches or pull requests

3 participants