Posts Introducción a los Test Unitarios en Android
Post
Cancel

Introducción a los Test Unitarios en Android

Crearemos un nuevo proyecto en Android Studio, File > New > New Project… con el nombre TestingExample y dejando las demás opciones por defecto.

Antes de empezar a escribir test unitarios debemos comprobar que tenemos creado el directorio src/test/java viendo el proyecto con la perspectiva Project, aquí se incluirán los test unitarios. Bajo la ruta src/androidTest/java se crearán los test de instrumentación, que requieren ser ejecutados en un terminal físico o en un emulador.

Comprobamos también que build.gradle Module:app tiene las siguientes dependencias, si no es así, debemos incluirlas y sincronizar Gradle:

1
2
3
4
5
  dependencies {
      compile fileTree(dir: 'libs', include: ['*.jar'])
      compile 'com.android.support:appcompat-v7:23.1.1'
      testCompile 'junit:junit:4.12'
  }

Una vez configurado el entorno, ya podemos empezar a escribir nuestros test, pero antes necesitamos tener alguna clase que testear, por lo que vamos a crear la clase Concatenator en src/java

Esta clase tendrá un método que servirá para concatenar dos textos, por el momento este método devolverá null.

1
2
3
4
5
6
public class Concatenator {

    public String concatenate(String firstText, String secondText) {
        return null;
    }
}

Ahora crearemos nuestra clase de test haciendo click sobre la clase que acabamos de escribir y pulsando ctrl+shift+t o haciendo click derecho sobre el editor de texto y seleccionando Go To > Test > Create New Test…, esto nos permitirá crear una nueva clase de test para Concatenator. En esta clase de test escribiremos un test que pruebe la funcionalidad del método concatenate() .

Elegimos la ruta de destino de nuestra nueva clase de test: app/src/test/java/com/example/testingexample/

Nuestra clase de test ConcatenatorTest quedará de la siguiente forma:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import org.junit.Test;
import static org.junit.Assert.*;

public class ConcatenatorTest {

    private Concatenator mConcatenator;

    @Before
    public void setUp() throws Exception {
        mConcatenator = new Concatenator();
    }

    @Test
    public void testConcatenate() throws Exception {
        String result = mConcatenator.concatenate("Hello", " World");
        assertEquals("Hello World", result);
    }
}

Para ejecutar nuestro test hacemos click derecho sobre CalculatorTest y seleccionamos Run > CalculatorTest, nuestro test fallará ya que todavía nos queda por implementar la lógica del método concatenate():

1
2
3
4
5
6
  public class Concatenator {

      public String concatenate(String firstText, String secondText) {
          return firstText + secondText;
      }
  }

Ahora que ya tenemos implementado nuestro método, volvemos a ejecutar nuestro test y comprobamos que que el resultado es correcto.

This post is licensed under CC BY 4.0 by the author.

-

Mouse Without Borders - Comparte el cursor del ratón, teclado y portapapeles entre varias máquinas

Comments powered by Disqus.

Trending Tags