viernes, 24 de enero de 2014

Probando aplicaciones Android con Robotium

Robotium es un framework de test automático para aplicaciones Android. Robotium hace facil escribir test de caja blanca. Pero que beneficios tengo si uso robotium?

  • Se puede desarrollar casos de prueba de gran alcance, con un mínimo conocimiento de la aplicación. 
  • El framework se ocupa de múltiples actividades de forma automática. 
  • Minimiza el tiempo necesario para escribir casos de prueba. 
  • Mejora la legibilidad de los casos de prueba. 
  • Mejora los tiempos de ejecución de casos de prueba. 
  • Se integra sin problemas con Maven, Gradle o Ant para ejecutar pruebas.

Veamos un ejemplo de como trabaja el framework:



public class EditorTest extends
                ActivityInstrumentationTestCase2 {

  private Solo solo;

  public EditorTest() {
                super(EditorActivity.class);
  }

  public void setUp() throws Exception {
        solo = new Solo(getInstrumentation(), getActivity());
  }
  
  public void testPreferenceIsSaved() throws Exception {
  
                solo.sendKey(Solo.MENU);
                solo.clickOnText("More");
                solo.clickOnText("Preferences");
                solo.clickOnText("Edit File Extensions");
                Assert.assertTrue(solo.searchText("rtf"));
                
                solo.clickOnText("txt");
                solo.clearEditText(2);
                solo.enterText(2, "robotium");
                solo.clickOnButton("Save");
                solo.goBack();
                solo.clickOnText("Edit File Extensions");
                Assert.assertTrue(solo.searchText("application/robotium"));
                
  }

   @Override
   public void tearDown() throws Exception {
        solo.finishOpenedActivities();
  }
}


Parece muy bueno!!
Dejo link:
https://code.google.com/p/robotium/