introducción a pruebas en android
DESCRIPTION
Introducción a cómo escribir pruebas en Android, utilizada en el #IWT2 DojoUS del 15 de mayo de 2.013TRANSCRIPT
![Page 2: Introducción a Pruebas en Android](https://reader034.vdocuments.site/reader034/viewer/2022052412/559708ab1a28ab932f8b46fc/html5/thumbnails/2.jpg)
2
• Conocer los aspectos básicos para escribir pruebas en Android
• Aprender las primeras clases del api d epruebade Android.
Objetivos
Objetivos
![Page 3: Introducción a Pruebas en Android](https://reader034.vdocuments.site/reader034/viewer/2022052412/559708ab1a28ab932f8b46fc/html5/thumbnails/3.jpg)
3
1. Introducción
2. Android TestingProject
3. Asserts
4. Clases Base para Pruebas
5. Para Saber Más
Índice
Índice
![Page 4: Introducción a Pruebas en Android](https://reader034.vdocuments.site/reader034/viewer/2022052412/559708ab1a28ab932f8b46fc/html5/thumbnails/4.jpg)
4
Introducción
![Page 5: Introducción a Pruebas en Android](https://reader034.vdocuments.site/reader034/viewer/2022052412/559708ab1a28ab932f8b46fc/html5/thumbnails/5.jpg)
5
Introducción
![Page 6: Introducción a Pruebas en Android](https://reader034.vdocuments.site/reader034/viewer/2022052412/559708ab1a28ab932f8b46fc/html5/thumbnails/6.jpg)
6
Introducción
Clase base para pruebas
Proyectos de prueba
Mocks
Asserts
![Page 7: Introducción a Pruebas en Android](https://reader034.vdocuments.site/reader034/viewer/2022052412/559708ab1a28ab932f8b46fc/html5/thumbnails/7.jpg)
7
Android Testing Project
![Page 8: Introducción a Pruebas en Android](https://reader034.vdocuments.site/reader034/viewer/2022052412/559708ab1a28ab932f8b46fc/html5/thumbnails/8.jpg)
Proyecto de prueba
![Page 9: Introducción a Pruebas en Android](https://reader034.vdocuments.site/reader034/viewer/2022052412/559708ab1a28ab932f8b46fc/html5/thumbnails/9.jpg)
9
Asserts
![Page 10: Introducción a Pruebas en Android](https://reader034.vdocuments.site/reader034/viewer/2022052412/559708ab1a28ab932f8b46fc/html5/thumbnails/10.jpg)
Asserts
![Page 11: Introducción a Pruebas en Android](https://reader034.vdocuments.site/reader034/viewer/2022052412/559708ab1a28ab932f8b46fc/html5/thumbnails/11.jpg)
11
Clases Base paraPruebas + Mocks
![Page 12: Introducción a Pruebas en Android](https://reader034.vdocuments.site/reader034/viewer/2022052412/559708ab1a28ab932f8b46fc/html5/thumbnails/12.jpg)
Clases Base para Pruebas
Qué probar class TestCase
JUnit 3
framework::TestCase
- fName: String
+ countTestCases() : int
# createResult() : TestResult
+ getName() : String
+ run() : TestResult
+ run(TestResult) : void
+ runBare() : void
# runTest() : void
+ setName(String) : void
# setUp() : void
# tearDown() : void
+ TestCase()
+ TestCase(String)
+ toString() : String
framework::Assert
Código que no utiliza el API de Android.• Conectarse a Internet y traer un RSS
(librerías de apache incluidas en el API).
![Page 13: Introducción a Pruebas en Android](https://reader034.vdocuments.site/reader034/viewer/2022052412/559708ab1a28ab932f8b46fc/html5/thumbnails/13.jpg)
Clases Base para Pruebas
Qué probar class TestCase
android.test
JUnit 3
framework::TestCase
+ countTestCases() : int
+ getName() : String
+ run() : TestResult
+ run(TestResult) : void
+ runBare() : void
+ setName(String) : void
+ TestCase()
+ TestCase(String)
+ toString() : String
framework::Assert
test::AndroidTestCase
# mContext: Context
- mTestContext: Context
+ assertActivityRequiresPermission(String, String, String) : void
+ assertReadingContentUriRequiresPermission(Uri, String) : void
+ assertWritingContentUriRequiresPermission(Uri, String) : void
+ getContext() : Context
+ getTestContext() : Context
+ setTestContext(Context) : void
+ testAndroidTestCaseSetupProperly() : void
Código que utiliza el contexto de la aplicación:• Acceso a SQLite
![Page 14: Introducción a Pruebas en Android](https://reader034.vdocuments.site/reader034/viewer/2022052412/559708ab1a28ab932f8b46fc/html5/thumbnails/14.jpg)
Clases Clases Base para Pruebas Base para Pruebas
Qué probar class TestCase
android.test
JUnit 3
framework::TestCase
+ countTestCases() : int
+ getName() : String
+ run() : TestResult
+ run(TestResult) : void
+ runBare() : void
+ setName(String) : void
+ TestCase()
+ TestCase(String)
+ toString() : String
framework::Assert
ActivityTestCase
T:extends Activity
test::ActivityInstrumentationTestCase2
~ mActivityClass: Class<T>
~ mActivityIntent: Intent = null
~ mInitialTouchMode: boolean = false
+ ActivityInstrumentationTestCase2(String, Class<T>)
+ ActivityInstrumentationTestCase2(Class<T>)
+ getActivity() : T
+ setActivityInitialTouchMode(boolean) : void
+ setActivityIntent(Intent) : void
Actions• Actions en un
estado real• Métodos del ciclo
de vida• Vistas
![Page 15: Introducción a Pruebas en Android](https://reader034.vdocuments.site/reader034/viewer/2022052412/559708ab1a28ab932f8b46fc/html5/thumbnails/15.jpg)
Clases Base para Pruebas
Services
Content Providers
![Page 16: Introducción a Pruebas en Android](https://reader034.vdocuments.site/reader034/viewer/2022052412/559708ab1a28ab932f8b46fc/html5/thumbnails/16.jpg)
16
Para saber más
![Page 17: Introducción a Pruebas en Android](https://reader034.vdocuments.site/reader034/viewer/2022052412/559708ab1a28ab932f8b46fc/html5/thumbnails/17.jpg)
Para saber más
Snippets de ejemplo: https://github.com/javierj/android-test-
snippets