Pros and Cons of Robotium

Hi guys, I am writing just a summary about Robotium, because maybe I will start to work with it. So, if you have any tips or suggestion, please feel free to comment here.

Robotium is a popular Android automation framework for testing native and hybrid Android apps using the black box method. Licensed under an Apache 2.0 license and first released in 2010.

To use Robotium, you need either the source code or apk file for the app, Eclipse for building a test project, ADT (Android Development Tools), SDK (Software Development Kit), JDK (Java Development Kit), and the Robotium.jar file.

Benefits:
• You can develop powerful test cases, with minimal knowledge of the application under test.
• Allows user to test more flexible and convenient for analyzing results.
• Robotium allows us to take screenshots anywhere in the test (both for Emulator and Device) and save it to device internal memory or SD Card or Emulator
• The framework handles multiple Android activities automatically.
• Minimal time needed to write solid test cases.
• Readability of test cases is greatly improved, compared to standard instrumentation tests.
• Test cases are more robust due to the run-time binding to GUI components.
• Blazing fast test case execution.
• Automatic timing and delays.

Limitations of Robotium:
• Tied to JUnit 3 Instrumentation on device.
• Tied to one app process.
• It can’t work with different Applications in on test – if your application call another one (like Camera) – Robotium can’t “see” it and press any buttons there.

Parallel tests:

I’ve found this API: https://github.com/square/spoon, but I believe that we can configure parallel tests with Jenkins too.

 

Thank you guys ! See you next week 🙂

 

Sources:

https://saucelabs.com/resources/articles/open-source-tools-robotium-android-appium

https://code.google.com/p/robotium/

https://www.linkedin.com/grp/post/3769150-5852687643892002817

http://blog.mobinius.com/robotium-best-testing-framework-for-android/

2 thoughts on “Pros and Cons of Robotium

  1. Rafaela , acompanho muitas postagem suas ultimamente. Estou fazendo um quadro comparativo de ferramentas para testes automatizados em aplicações Android e vez ou outra sempre me pego em um post seu kkkkkkk

    Sou desenvolvedor de software voltados para web, nunca trabalhei desenvolvendo pra mobile nem tão pouco havia tido contado com testes automatizados de qualquer tipo. Meus testes são sempre manuais, ou eu mesmo faço ou a equipe de testes da empresa(quando tem equipe de teste) faz.

    Eu queria saber por exemplo se no Robotium tem como eu obter a performance do app no momento em que estou executando um teste para saber por exemplo quanto de memória ele consumiu , quanto de processamento ele consumiu etc. O que eu sei geralmente, do que pesquiso é que ele serve para testes de interface gráfica além de testes de aceitação. Sobre esse ponto, qual a real diferença entre teste de interface gráfica e teste de aceitação? Eu sei que ambos os testes são do tipo funcional e no caso dos dois a sensação que eu tenho , talvez por limitação minha é que são testes para verificar se o aplicativo funciona conforme o especificado.

    Enfim , é isso! Seu trabalho nesse blog é muito bom!!!

    1. Ola Heisenberg, ah que legal saber que os posts te ajudam ! Espero que ainda seja mais ou menos a mesma coisa pois faz tempo que nao posto coisas sobre mobile automation. De qualquer forma, eu nao sei te dizer se o Robotium faz teste de performance nao, acredito que se voce estiver usando o Android Studio, voce consegue ver na aba de performance do app ja, nao sei se adianta para o seu lado, porque nao seria automatico. A gente aqui usa o Firebase com o Performance Monitoring SDK, mas ele eh pago, apesar q acho que voce consegue coletar as informacoes mesmo sem ter o Firebase. Nao sei se te ajuda, vou dar uma olhada com os devs que eu trabalhei nos projetos de mobile ano retrasado porque eu lembro que fizemos algo mas nao esta muito fresco na minha memoria haha

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.