From 21b5fdc1bbb92fb6aadbcd9dfeacd5d9fc6784b5 Mon Sep 17 00:00:00 2001 From: andoni-ubu Date: Wed, 23 Feb 2022 23:42:41 +0100 Subject: [PATCH 01/22] =?UTF-8?q?Primer=20commmit=20con=20la=20modificaci?= =?UTF-8?q?=C3=B3n=20del=20gitignore=20para=20evitar=20que=20nos=20meta=20?= =?UTF-8?q?los=20reports=20y=20ficheros=20no=20necesarios,=20y=20comienzo?= =?UTF-8?q?=20de=20construcci=C3=B3n=20del=20ReusablePoolTest?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 6 ++++- .../gii/dass/test/c01/ReusablePoolTest.java | 23 ++++++++++++++++--- 2 files changed, 25 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 4d6556ce..b288c4c9 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,9 @@ *.class - +/report +report.xml +jacoco.exec +.project +.classpath # Package Files # *.jar *.war diff --git a/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java b/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java index ae9b0d18..814b3d90 100644 --- a/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java +++ b/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java @@ -5,21 +5,31 @@ import static org.junit.Assert.*; +import java.lang.reflect.Field; + import org.junit.After; import org.junit.Before; import org.junit.Test; +import ubu.gii.dass.c01.DuplicatedInstanceException; +import ubu.gii.dass.c01.NotFreeInstanceException; +import ubu.gii.dass.c01.Reusable; +import ubu.gii.dass.c01.ReusablePool; + /** - * @author alumno + * @author Andoni Vianez Ulloa + * @author Yobana Nido lvarez * */ public class ReusablePoolTest { - + + private ReusablePool pool; /** * @throws java.lang.Exception */ @Before public void setUp() throws Exception { + pool = ReusablePool.getInstance(); } /** @@ -27,6 +37,7 @@ public void setUp() throws Exception { */ @After public void tearDown() throws Exception { + pool = null; } /** @@ -34,7 +45,13 @@ public void tearDown() throws Exception { */ @Test public void testGetInstance() { - fail("Not yet implemented"); + ReusablePool pool = ReusablePool.getInstance(); + assertNotNull("Devuelve un objeto nulo", pool); + + ReusablePool pool2 = ReusablePool.getInstance(); + assertNotNull("Devuelve un objeto nulo", pool2); + + assertSame("Misma instancia que el Singleton", pool, pool2); } /** From fc97f29a15425e607f768a6e45b50c0ee216ec08 Mon Sep 17 00:00:00 2001 From: Andoni Vianez Date: Wed, 23 Feb 2022 23:56:00 +0100 Subject: [PATCH 02/22] Workflow con Ant MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Añadido flujo para poder compilar Java con Ant --- .github/workflows/ant.yml | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 .github/workflows/ant.yml diff --git a/.github/workflows/ant.yml b/.github/workflows/ant.yml new file mode 100644 index 00000000..50367be8 --- /dev/null +++ b/.github/workflows/ant.yml @@ -0,0 +1,25 @@ +# This workflow will build a Java project with Ant +# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-ant + +name: Java CI + +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Set up JDK 11 + uses: actions/setup-java@v2 + with: + java-version: '11' + distribution: 'temurin' + - name: Build with Ant + run: ant -noinput -buildfile build.xml From 6dfb31f9588d28a650b5cd899fe3a3e6fca2e524 Mon Sep 17 00:00:00 2001 From: andoni-ubu Date: Thu, 24 Feb 2022 00:09:00 +0100 Subject: [PATCH 03/22] =?UTF-8?q?A=C3=B1adimos=20los=20testCase=20para=20l?= =?UTF-8?q?os=20reusables,=20superando=20un=2080%=20del=20coverage.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../gii/dass/test/c01/ReusablePoolTest.java | 29 +++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java b/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java index 814b3d90..dc0ce4dc 100644 --- a/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java +++ b/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java @@ -59,7 +59,19 @@ public void testGetInstance() { */ @Test public void testAcquireReusable() { - fail("Not yet implemented"); + Reusable r1, r2, r3 = null; + try { + r1 = pool.acquireReusable(); + assertNotNull(r1); + assertTrue(r1 instanceof Reusable); + r2 = pool.acquireReusable(); + assertNotNull(r2); + assertTrue(r2 instanceof Reusable); + assertFalse(r1.util().equals(r2.util())); + r3 = pool.acquireReusable(); + } catch (NotFreeInstanceException e) { + assertNull(r3); + } } /** @@ -67,7 +79,20 @@ public void testAcquireReusable() { */ @Test public void testReleaseReusable() { - fail("Not yet implemented"); + Reusable r1, r2 = null; + try { + r1 = pool.acquireReusable(); + String hash1 = r1.util(); + pool.releaseReusable(r1); + r2 = pool.acquireReusable(); + assertTrue(hash1.equals(r2.util())); + pool.releaseReusable(r2); + pool.releaseReusable(r2); + } catch (NotFreeInstanceException e) { + e.printStackTrace(); + } catch (DuplicatedInstanceException e) { + assertTrue(true); + } } } From e9a131d59603401fa5f431ced534ed55cb89cf7a Mon Sep 17 00:00:00 2001 From: andoni-ubu Date: Thu, 24 Feb 2022 00:26:26 +0100 Subject: [PATCH 04/22] =?UTF-8?q?A=C3=B1adidos=20test=20cases=20restantes,?= =?UTF-8?q?=20con=20los=20throws=20correspondientes.=20Conseguimos=20casi?= =?UTF-8?q?=20un=2094%=20de=20coverage=20sobre=20el=20main.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../gii/dass/test/c01/ReusablePoolTest.java | 39 ++++++++++++------- 1 file changed, 26 insertions(+), 13 deletions(-) diff --git a/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java b/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java index dc0ce4dc..00a3a87f 100644 --- a/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java +++ b/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java @@ -5,8 +5,6 @@ import static org.junit.Assert.*; -import java.lang.reflect.Field; - import org.junit.After; import org.junit.Before; import org.junit.Test; @@ -15,6 +13,7 @@ import ubu.gii.dass.c01.NotFreeInstanceException; import ubu.gii.dass.c01.Reusable; import ubu.gii.dass.c01.ReusablePool; +import ubu.gii.dass.c01.Client; /** * @author Andoni Vianez Ulloa @@ -56,6 +55,7 @@ public void testGetInstance() { /** * Test method for {@link ubu.gii.dass.c01.ReusablePool#acquireReusable()}. + * @throws NotFreeInstanceException */ @Test public void testAcquireReusable() { @@ -76,23 +76,36 @@ public void testAcquireReusable() { /** * Test method for {@link ubu.gii.dass.c01.ReusablePool#releaseReusable(ubu.gii.dass.c01.Reusable)}. + * @throws NotFreeInstanceException + * @throws DuplicatedInstanceException */ @Test - public void testReleaseReusable() { - Reusable r1, r2 = null; + public void testReleaseReusable() throws NotFreeInstanceException, DuplicatedInstanceException { + Reusable r1 = null; + + r1 = pool.acquireReusable(); + pool.releaseReusable(r1); + try { - r1 = pool.acquireReusable(); - String hash1 = r1.util(); pool.releaseReusable(r1); - r2 = pool.acquireReusable(); - assertTrue(hash1.equals(r2.util())); - pool.releaseReusable(r2); - pool.releaseReusable(r2); - } catch (NotFreeInstanceException e) { - e.printStackTrace(); } catch (DuplicatedInstanceException e) { - assertTrue(true); + assertTrue(e instanceof DuplicatedInstanceException); } } + + /** + * Test method for {@link ubu.gii.dass.c01.Client#main(ubu.gii.dass.c01.Client)}. + * @throws DuplicatedInstanceException + * @throws NotFreeInstanceException + */ + @SuppressWarnings("static-access") + @Test + public void testClient() throws NotFreeInstanceException, DuplicatedInstanceException { + Client client = new Client(); + assertNotNull(client); + assertTrue(client instanceof Client); + + client.main(null); + } } From bfa4f72590145ccecc74a046620a962cebab7c03 Mon Sep 17 00:00:00 2001 From: Andoni Vianez Date: Thu, 24 Feb 2022 01:02:58 +0100 Subject: [PATCH 05/22] Codecov MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Añadida línea para codecov, ya que no reportaba datos. --- .github/workflows/ant.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ant.yml b/.github/workflows/ant.yml index 50367be8..64dad094 100644 --- a/.github/workflows/ant.yml +++ b/.github/workflows/ant.yml @@ -23,3 +23,4 @@ jobs: distribution: 'temurin' - name: Build with Ant run: ant -noinput -buildfile build.xml + - uses: codecov/codecov-action@v1 From eeb69d326451c90466cc3a912add820cef5d586e Mon Sep 17 00:00:00 2001 From: andoni-ubu Date: Thu, 24 Feb 2022 01:07:40 +0100 Subject: [PATCH 06/22] Gitignore fix Eliminados del gitignore, porque creo que esta dando problemas con Codecov --- .gitignore | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index b288c4c9..4d6556ce 100644 --- a/.gitignore +++ b/.gitignore @@ -1,9 +1,5 @@ *.class -/report -report.xml -jacoco.exec -.project -.classpath + # Package Files # *.jar *.war From d385b0063798be7cff9a50d94ce7ca432c4f0c25 Mon Sep 17 00:00:00 2001 From: andoni-ubu Date: Thu, 24 Feb 2022 01:09:34 +0100 Subject: [PATCH 07/22] Quick fix Fix con el apellido de Yobana, que no compilaba el test sin darme cuenta. --- src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java b/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java index 00a3a87f..66ded72c 100644 --- a/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java +++ b/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java @@ -17,7 +17,7 @@ /** * @author Andoni Vianez Ulloa - * @author Yobana Nido lvarez + * @author Yobana Nido Alvarez * */ public class ReusablePoolTest { From 2b50999a4e4e362ddf176b1c75f5f3b9be52aafd Mon Sep 17 00:00:00 2001 From: andoni-ubu Date: Thu, 24 Feb 2022 01:17:20 +0100 Subject: [PATCH 08/22] =?UTF-8?q?Cambiado=20releaseReusable=20Daba=20un=20?= =?UTF-8?q?error=20de=20compilaci=C3=B3n,=20por=20lo=20que=20hemos=20hecho?= =?UTF-8?q?=20algo=20m=C3=A1s=20complejo=20el=20m=C3=A9todo=20y=20ahora=20?= =?UTF-8?q?compila=20correctamente=20sin=20errores.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ubu/gii/dass/test/c01/ReusablePoolTest.java | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java b/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java index 66ded72c..7e2b51be 100644 --- a/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java +++ b/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java @@ -81,15 +81,19 @@ public void testAcquireReusable() { */ @Test public void testReleaseReusable() throws NotFreeInstanceException, DuplicatedInstanceException { - Reusable r1 = null; - - r1 = pool.acquireReusable(); - pool.releaseReusable(r1); - + Reusable r1, r2 = null; try { + r1 = pool.acquireReusable(); + String hash1 = r1.util(); pool.releaseReusable(r1); + r2 = pool.acquireReusable(); + assertTrue(hash1.equals(r2.util())); + pool.releaseReusable(r2); + pool.releaseReusable(r2); + } catch (NotFreeInstanceException e) { + e.printStackTrace(); } catch (DuplicatedInstanceException e) { - assertTrue(e instanceof DuplicatedInstanceException); + assertTrue(true); } } From 956db24249df94fe70017d0991a3e98a47c0e316 Mon Sep 17 00:00:00 2001 From: Andoni Vianez Date: Thu, 24 Feb 2022 01:20:02 +0100 Subject: [PATCH 09/22] Codecov ant fix Faltaba el test con ant --- .github/workflows/ant.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/ant.yml b/.github/workflows/ant.yml index 64dad094..56c581ac 100644 --- a/.github/workflows/ant.yml +++ b/.github/workflows/ant.yml @@ -23,4 +23,6 @@ jobs: distribution: 'temurin' - name: Build with Ant run: ant -noinput -buildfile build.xml + - name: Test with Ant + run: ant -buildfile build.xml test - uses: codecov/codecov-action@v1 From 9197a91673b72c94148c90576c634825733d3aed Mon Sep 17 00:00:00 2001 From: yna1001 <33390322+Yobana@users.noreply.github.com> Date: Thu, 24 Feb 2022 21:27:33 +0100 Subject: [PATCH 10/22] Modificado TestGetInsntace Se ha modificado el TestGetInstance --- src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java b/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java index 7e2b51be..8a44f8fc 100644 --- a/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java +++ b/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java @@ -46,9 +46,11 @@ public void tearDown() throws Exception { public void testGetInstance() { ReusablePool pool = ReusablePool.getInstance(); assertNotNull("Devuelve un objeto nulo", pool); + assertTrue(pool instanceof ReusablePool); ReusablePool pool2 = ReusablePool.getInstance(); assertNotNull("Devuelve un objeto nulo", pool2); + assertTrue(pool2 instanceof ReusablePool); assertSame("Misma instancia que el Singleton", pool, pool2); } From 6fdeb5d737e18059204abce20c49637c4c140816 Mon Sep 17 00:00:00 2001 From: yna1001 <33390322+Yobana@users.noreply.github.com> Date: Thu, 24 Feb 2022 21:32:47 +0100 Subject: [PATCH 11/22] =?UTF-8?q?Se=20a=C3=B1aden=20comentarios?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Añadidos comentarios al Código --- .../gii/dass/test/c01/ReusablePoolTest.java | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java b/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java index 8a44f8fc..d07b9a8d 100644 --- a/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java +++ b/src/test/ubu/gii/dass/test/c01/ReusablePoolTest.java @@ -45,13 +45,16 @@ public void tearDown() throws Exception { @Test public void testGetInstance() { ReusablePool pool = ReusablePool.getInstance(); + // Comprobamos que no es null assertNotNull("Devuelve un objeto nulo", pool); + // Comprobamos que el objeto devuelto es una instancia assertTrue(pool instanceof ReusablePool); ReusablePool pool2 = ReusablePool.getInstance(); + // Comprobamos que no es null assertNotNull("Devuelve un objeto nulo", pool2); + // Comprobamos que el objeto devuelto es una instancia assertTrue(pool2 instanceof ReusablePool); - assertSame("Misma instancia que el Singleton", pool, pool2); } @@ -60,7 +63,7 @@ public void testGetInstance() { * @throws NotFreeInstanceException */ @Test - public void testAcquireReusable() { + public void testAcquireReusable() throws NotFreeInstanceException { Reusable r1, r2, r3 = null; try { r1 = pool.acquireReusable(); @@ -69,6 +72,7 @@ public void testAcquireReusable() { r2 = pool.acquireReusable(); assertNotNull(r2); assertTrue(r2 instanceof Reusable); + // Se comprueba que no son el mismo objeto assertFalse(r1.util().equals(r2.util())); r3 = pool.acquireReusable(); } catch (NotFreeInstanceException e) { @@ -86,12 +90,12 @@ public void testReleaseReusable() throws NotFreeInstanceException, DuplicatedIns Reusable r1, r2 = null; try { r1 = pool.acquireReusable(); - String hash1 = r1.util(); - pool.releaseReusable(r1); - r2 = pool.acquireReusable(); + String hash1 = r1.util(); // Guardamos + pool.releaseReusable(r1); // Liberamos + r2 = pool.acquireReusable(); // Cogemos un nuevo reusable assertTrue(hash1.equals(r2.util())); - pool.releaseReusable(r2); - pool.releaseReusable(r2); + pool.releaseReusable(r2); // Liberamos + pool.releaseReusable(r2); // Liberamos y salta la excepción } catch (NotFreeInstanceException e) { e.printStackTrace(); } catch (DuplicatedInstanceException e) { From c7dfb651421dcc4361ec04858303f718b74b177d Mon Sep 17 00:00:00 2001 From: yna1001 <33390322+Yobana@users.noreply.github.com> Date: Thu, 24 Feb 2022 21:46:38 +0100 Subject: [PATCH 12/22] Se modifica el Readme MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Se modifica el readme añadiendo el enunciado y las preguntas solicitadas por el profesor. --- README.md | 30 ++++++++++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 4078dc6e..7787057f 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,32 @@ poolobject ========== -Java code example of design creational pattern pool object +Autores +========== +Andoni Vianez Ulloa y +Yobana Nido Alvarez + + +Objetivos de la práctica +========== +- Comprender los objetivos de medición relacionados con la caracterización y la evaluación de productos, procesos y recursos software +- Comprender, aplicar y analizar técnicas de medición sobre entidades de productos software relacionados con conjuntos de pruebas de software +- Comprender, aplicar y analizar medidas relacionadas sobre entidades de proceso y recursos de prueba del software + +Enunciado +========== +- En la práctica se va simular un pequeño desarrollo de un producto software para realizar mediciones sobre él. El objetivo es establecer un caso de estudio que sirva para caracterizar y evaluar tanto el producto desarrollado como el proceso seguido. + +Preguntas +========== +¿Se ha realizado trabajo en equipo? + + +¿Tiene calidad el conjunto de pruebas disponibles? + + +¿Cuál es el esfuerzo invertido en realizar la actividad? + + +¿Cuál es el número de fallos encontrados en el código? -Example to apply good practise in software developmemnt: test and mesurement. From 008ef39fae1a69a0db9f495a02f5b3893bbb56aa Mon Sep 17 00:00:00 2001 From: yna1001 <33390322+Yobana@users.noreply.github.com> Date: Thu, 24 Feb 2022 22:34:09 +0100 Subject: [PATCH 13/22] Respondidas preguntas Se han respondido las preguntas solicitadas por el profesor. --- README.md | 36 +++++++++++++++++++----------------- 1 file changed, 19 insertions(+), 17 deletions(-) diff --git a/README.md b/README.md index 7787057f..9153dc06 100644 --- a/README.md +++ b/README.md @@ -1,32 +1,34 @@ +[![codecov](https://codecov.io/gh/andonivianez/poolobject/branch/master/graph/badge.svg?token=ODPDXDS1B2)](https://codecov.io/gh/andonivianez/poolobject)
+![workflow](https://github.com/andonivianez/poolobject/actions/workflows/ant.yml/badge.svg)
poolobject ========== -Autores -========== -Andoni Vianez Ulloa y -Yobana Nido Alvarez +## **Autores** +- [Andoni Vianez Ulloa](https://github.com/andonivianez) +- [Yobana Nido Álvarez](https://github.com/Yobana) -Objetivos de la práctica -========== +## **Objetivos de la práctica** - Comprender los objetivos de medición relacionados con la caracterización y la evaluación de productos, procesos y recursos software - Comprender, aplicar y analizar técnicas de medición sobre entidades de productos software relacionados con conjuntos de pruebas de software - Comprender, aplicar y analizar medidas relacionadas sobre entidades de proceso y recursos de prueba del software -Enunciado -========== +## **Enunciado** - En la práctica se va simular un pequeño desarrollo de un producto software para realizar mediciones sobre él. El objetivo es establecer un caso de estudio que sirva para caracterizar y evaluar tanto el producto desarrollado como el proceso seguido. -Preguntas -========== -¿Se ha realizado trabajo en equipo? - - -¿Tiene calidad el conjunto de pruebas disponibles? - +## **Preguntas** -¿Cuál es el esfuerzo invertido en realizar la actividad? +**¿Se ha realizado trabajo en equipo?** +Sí, hemos participado los dos integrantes del equipo: +**¿Tiene calidad el conjunto de pruebas disponibles?** +Sí ya que superan el 94% del coverage en la carpeta principal (main). -¿Cuál es el número de fallos encontrados en el código? +**¿Cuál es el esfuerzo invertido en realizar la actividad?** +El esfuerzo ha sido compartido entre ambos, repartiéndonos por un lado la creación del fork e indagación de las herramientas, +y por el otro el desarrollo de los propios tests. El mayor problema (por llamarlo de alguna manera) es la cuestión de los permisos +en Github, ya que el que no es propietario del fork no puede vincularlo a Codecov. El descubrir cómo funcionan las Actions ha sido interesante, +mucho más fácil que utilizar una herramienta externa como Travis. +**¿Cuál es el número de fallos encontrados en el código?** +No encontramos ningún fallo en el código (compila correctamente tal y como puede verse en Github Actions). From c9635884da0b9a7ee725ac04725a35d33c402fd5 Mon Sep 17 00:00:00 2001 From: yna1001 <33390322+Yobana@users.noreply.github.com> Date: Tue, 15 Mar 2022 20:17:00 +0100 Subject: [PATCH 14/22] =?UTF-8?q?Actualizaci=C3=B3n=20a=20mi=20cuenta?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 32 ++++++++++++++++++++++++++++++-- 1 file changed, 30 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 4078dc6e..9153dc06 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,34 @@ +[![codecov](https://codecov.io/gh/andonivianez/poolobject/branch/master/graph/badge.svg?token=ODPDXDS1B2)](https://codecov.io/gh/andonivianez/poolobject)
+![workflow](https://github.com/andonivianez/poolobject/actions/workflows/ant.yml/badge.svg)
poolobject ========== -Java code example of design creational pattern pool object +## **Autores** +- [Andoni Vianez Ulloa](https://github.com/andonivianez) +- [Yobana Nido Álvarez](https://github.com/Yobana) -Example to apply good practise in software developmemnt: test and mesurement. + +## **Objetivos de la práctica** +- Comprender los objetivos de medición relacionados con la caracterización y la evaluación de productos, procesos y recursos software +- Comprender, aplicar y analizar técnicas de medición sobre entidades de productos software relacionados con conjuntos de pruebas de software +- Comprender, aplicar y analizar medidas relacionadas sobre entidades de proceso y recursos de prueba del software + +## **Enunciado** +- En la práctica se va simular un pequeño desarrollo de un producto software para realizar mediciones sobre él. El objetivo es establecer un caso de estudio que sirva para caracterizar y evaluar tanto el producto desarrollado como el proceso seguido. + +## **Preguntas** + +**¿Se ha realizado trabajo en equipo?** +Sí, hemos participado los dos integrantes del equipo: + +**¿Tiene calidad el conjunto de pruebas disponibles?** +Sí ya que superan el 94% del coverage en la carpeta principal (main). + +**¿Cuál es el esfuerzo invertido en realizar la actividad?** +El esfuerzo ha sido compartido entre ambos, repartiéndonos por un lado la creación del fork e indagación de las herramientas, +y por el otro el desarrollo de los propios tests. El mayor problema (por llamarlo de alguna manera) es la cuestión de los permisos +en Github, ya que el que no es propietario del fork no puede vincularlo a Codecov. El descubrir cómo funcionan las Actions ha sido interesante, +mucho más fácil que utilizar una herramienta externa como Travis. + +**¿Cuál es el número de fallos encontrados en el código?** +No encontramos ningún fallo en el código (compila correctamente tal y como puede verse en Github Actions). From 39bc398df655ec5407ce6387fee36f42f1b6c945 Mon Sep 17 00:00:00 2001 From: yna1001 <33390322+Yobana@users.noreply.github.com> Date: Tue, 15 Mar 2022 20:22:43 +0100 Subject: [PATCH 15/22] Archivos actualizados Se actualizan los archivos del repositorio de Andoni que estuvimos trabajando --- .classpath | 10 ++++++++++ .project | 17 +++++++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 .classpath create mode 100644 .project diff --git a/.classpath b/.classpath new file mode 100644 index 00000000..bff161fd --- /dev/null +++ b/.classpath @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/.project b/.project new file mode 100644 index 00000000..f9b4c626 --- /dev/null +++ b/.project @@ -0,0 +1,17 @@ + + + git_poolobject + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + From 13275137b724841a204c6d61ddb0f2df55baabd1 Mon Sep 17 00:00:00 2001 From: yna1001 <33390322+Yobana@users.noreply.github.com> Date: Tue, 15 Mar 2022 20:35:32 +0100 Subject: [PATCH 16/22] Actualizamos codacy Actualizamos para que lo envie a codacy --- .travis.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 60b2ed00..107d55c7 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,7 +1,10 @@ language: java before_script: - sudo apt-get install ant-optional +before_install: + - sudo apt-get install jq + - wget -O ~/codacy-coverage-reporter-assembly-latest.jar $(curl https://api.github.com/repos/codacy/codacy-coverage-reporter/releases/latest | jq -r .assets[0].browser_download_url) after_success: - - bash <(curl -s https://codecov.io/bash) + - java -jar ~/codacy-coverage-reporter-assembly-latest.jar report -l Java -r target/jacoco/jacoco.xml jdk: - openjdk8 From c2eaf93b7fd80f5da43db18bee23f0cbf5ccedac Mon Sep 17 00:00:00 2001 From: yna1001 <33390322+Yobana@users.noreply.github.com> Date: Tue, 15 Mar 2022 20:36:07 +0100 Subject: [PATCH 17/22] =?UTF-8?q?Segunda=20actualizaci=C3=B3n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .travis.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 107d55c7..aa9ea62f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,8 +2,8 @@ language: java before_script: - sudo apt-get install ant-optional before_install: - - sudo apt-get install jq - - wget -O ~/codacy-coverage-reporter-assembly-latest.jar $(curl https://api.github.com/repos/codacy/codacy-coverage-reporter/releases/latest | jq -r .assets[0].browser_download_url) + - sudo apt-get install jq + - wget -O ~/codacy-coverage-reporter-assembly-latest.jar $(curl https://api.github.com/repos/codacy/codacy-coverage-reporter/releases/latest | jq -r .assets[0].browser_download_url) after_success: - java -jar ~/codacy-coverage-reporter-assembly-latest.jar report -l Java -r target/jacoco/jacoco.xml jdk: From e20750b2abfba3deae0c5c2d2a3dd891ecfd1e0d Mon Sep 17 00:00:00 2001 From: yna1001 <33390322+Yobana@users.noreply.github.com> Date: Tue, 15 Mar 2022 20:50:16 +0100 Subject: [PATCH 18/22] Codacy MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Añadimos datos codacy --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 9153dc06..786a8f96 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,6 @@ [![codecov](https://codecov.io/gh/andonivianez/poolobject/branch/master/graph/badge.svg?token=ODPDXDS1B2)](https://codecov.io/gh/andonivianez/poolobject)
![workflow](https://github.com/andonivianez/poolobject/actions/workflows/ant.yml/badge.svg)
+[![Codacy Badge](https://app.codacy.com/gh/Yobana/poolobject/dashboard?branch=master) poolobject ========== From e72c7d70936af390500a360166bdcd6dbe11401c Mon Sep 17 00:00:00 2001 From: yna1001 <33390322+Yobana@users.noreply.github.com> Date: Tue, 15 Mar 2022 20:55:17 +0100 Subject: [PATCH 19/22] Update README.md --- README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 786a8f96..ffc4c359 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,8 @@ [![codecov](https://codecov.io/gh/andonivianez/poolobject/branch/master/graph/badge.svg?token=ODPDXDS1B2)](https://codecov.io/gh/andonivianez/poolobject)
![workflow](https://github.com/andonivianez/poolobject/actions/workflows/ant.yml/badge.svg)
-[![Codacy Badge](https://app.codacy.com/gh/Yobana/poolobject/dashboard?branch=master) +[![Codacy Badge](https://app.codacy.com/project/badge/Grade/c56384a7b0044caea298480b9fde2522) (https://app.codacy.com/gh/Yobana/poolobject/dashboard?branch=master)] + + poolobject ========== From e5554ba5db82894b64db077a206f93cfbe5eac96 Mon Sep 17 00:00:00 2001 From: yna1001 <33390322+Yobana@users.noreply.github.com> Date: Tue, 15 Mar 2022 20:58:49 +0100 Subject: [PATCH 20/22] Update README.md --- README.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/README.md b/README.md index ffc4c359..63952038 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,5 @@ [![codecov](https://codecov.io/gh/andonivianez/poolobject/branch/master/graph/badge.svg?token=ODPDXDS1B2)](https://codecov.io/gh/andonivianez/poolobject)
![workflow](https://github.com/andonivianez/poolobject/actions/workflows/ant.yml/badge.svg)
-[![Codacy Badge](https://app.codacy.com/project/badge/Grade/c56384a7b0044caea298480b9fde2522) (https://app.codacy.com/gh/Yobana/poolobject/dashboard?branch=master)] - poolobject ========== From f2e50c5c3265e2c4f0758f032d74b6626e641c2a Mon Sep 17 00:00:00 2001 From: yna1001 <33390322+Yobana@users.noreply.github.com> Date: Tue, 15 Mar 2022 21:05:38 +0100 Subject: [PATCH 21/22] Mejorar legibilidad MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Se mejora la legibilidad de código --- src/main/ubu/gii/dass/c01/Client.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/ubu/gii/dass/c01/Client.java b/src/main/ubu/gii/dass/c01/Client.java index 2ec1d57f..99d12cb4 100644 --- a/src/main/ubu/gii/dass/c01/Client.java +++ b/src/main/ubu/gii/dass/c01/Client.java @@ -8,7 +8,9 @@ public class Client{ public static void main(String arg[]) throws NotFreeInstanceException, DuplicatedInstanceException{ ReusablePool pool; - Reusable r1,r2,r3; + Reusable r1; + Reusable r2; + Reusable r3; Logger logger = Logger.getLogger("c01"); @@ -31,4 +33,4 @@ public static void main(String arg[]) throws NotFreeInstanceException, Duplicate } -} \ No newline at end of file +} From 0594729ad9a5749b64787a5278cb40115a7a772a Mon Sep 17 00:00:00 2001 From: yna1001 <33390322+Yobana@users.noreply.github.com> Date: Tue, 15 Mar 2022 21:21:36 +0100 Subject: [PATCH 22/22] Coverage codacy --- cobertura.xml | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 cobertura.xml diff --git a/cobertura.xml b/cobertura.xml new file mode 100644 index 00000000..afd10955 --- /dev/null +++ b/cobertura.xml @@ -0,0 +1,37 @@ + + +< cobertura líneas-válidas = " 8 " líneas-cubiertas = " 8 " línea-tarifa = " 1 " ramas-válidas = " 4 " ramas-cubiertas = " 4 " rama-tasa = " 1 " timestamp = " 1394890504210 " complejidad = " 0 " versión = " 0.1 " > + < fuentes > + < fuente >fuentes + + < paquetes > + < nombre del paquete = " 3 " line-rate = " 1 " branch-rate = " 1 " > + < clases > + < nombre de clase = " cc.js " nombre de archivo = " cc.js " line-rate = " 1 " branch-rate = " 1 " > + < métodos > + < nombre del método = " normalizar " aciertos = " 11 " firma = " ()V " > + < líneas > + < número de línea = " 1 " hits = " 11 " /> + + + < nombre del método = " getBrand " visitas = " 7 " firma = " ()V " > + < líneas > + < número de línea = " 5 " hits = " 7 " /> + + + + < líneas > + < número de línea = " 1 " hits = " 1 " branch = " false " /> + < número de línea = " 2 " hits = " 11 " branch = " false " /> + < número de línea = " 5 " hits = " 1 " branch = " false " /> + < número de línea = " 6 " hits = " 7 " branch = " false " /> + < número de línea = " 15 " hits = " 7 " branch = " false " /> + < número de línea = " 17 " hits = " 7 " branch = " false " /> + < número de línea = " 18 " hits = " 25 " branch = " true " condition-coverage = " 100% (4/4) " /> + < número de línea = " 20 " hits = " 6 " branch = " false " /> + + + + + + \ No newline at end of file