introducción a pruebas en android

17
#IWT2 DOJO US Introducción a pruebas en Android www.iwt2.org [email protected]

Upload: javierj

Post on 04-Jul-2015

531 views

Category:

Documents


1 download

DESCRIPTION

Introducción a cómo escribir pruebas en Android, utilizada en el #IWT2 DojoUS del 15 de mayo de 2.013

TRANSCRIPT

Page 1: Introducción a Pruebas en Android

#IWT2 DOJO US

Introducción a pruebas en Android

[email protected]

Page 2: Introducción a Pruebas en Android

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

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

4

Introducción

Page 5: Introducción a Pruebas en Android

5

Introducción

Page 6: Introducción a Pruebas en Android

6

Introducción

Clase base para pruebas

Proyectos de prueba

Mocks

Asserts

Page 7: Introducción a Pruebas en Android

7

Android Testing Project

Page 8: Introducción a Pruebas en Android

Proyecto de prueba

Page 9: Introducción a Pruebas en Android

9

Asserts

Page 10: Introducción a Pruebas en Android

Asserts

Page 11: Introducción a Pruebas en Android

11

Clases Base paraPruebas + Mocks

Page 12: Introducción a Pruebas en Android

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

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

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

Clases Base para Pruebas

Services

Content Providers

Page 16: Introducción a Pruebas en Android

16

Para saber más