2011-08-23 11 views
5

Estoy tratando de obtener algunas pruebas unitarias para mis aplicaciones de Android. Estaba siguiendo el tutorial Hello, Testing del centro dev Android, pero me está dando un mensaje que dice: plazoPruebas unitarias de las aplicaciones de Android en Eclipse + jUnit: prueba de ejecución fallida: ejecución de prueba incompleta. Esperado 1 pruebas, recibido 0

La prueba ha fallado: Prueba de funcionamiento incompleta. Previstos 1 pruebas, recibió 0

Aquí está el código que tengo:

public class LoginTest extends ActivityInstrumentationTestCase2<Login> { 

Activity mActivity; 
EditText mLoginTxt; 
EditText mPwdTxt; 
Button mLoginBtn; 
Button mClearBtn; 

public LoginTest(String pkg, Class<Login> activityClass) { 
    super("pkg_name", Login.class); 
} 

@Override 
public void setUp() throws Exception { 
    super.setUp(); 
} 

public void testPreconditions() { 

} 

public void testClear() { 
    assertTrue(true); 
} 

Aquí está la salida de la consola:

[2011-08-23 12:21:12 - <AppNameTest>] ------------------------------ 
[2011-08-23 12:21:12 - <AppNameTest>] Android Launch! 
[2011-08-23 12:21:12 - <AppNameTest>] adb is running normally. 
[2011-08-23 12:21:12 - <AppNameTest>] Performing android.test.InstrumentationTestRunner JUnit launch 
[2011-08-23 12:21:12 - <AppNameTest>] Automatic Target Mode: using existing emulator 'emulator-5554' running compatible AVD 'AndroidHDPI' 
[2011-08-23 12:21:14 - <AppNameTest>] Application already deployed. No need to reinstall. 
[2011-08-23 12:21:14 - <AppNameTest>] Project dependency found, installing: <AppName> 
[2011-08-23 12:21:16 - <AppNameTest>] Application already deployed. No need to reinstall. 
[2011-08-23 12:21:16 - <AppNameTest>] Launching instrumentation android.test.InstrumentationTestRunner on device emulator-5554 
[2011-08-23 12:21:18 - <AppNameTest>] Collecting test information 
[2011-08-23 12:21:20 - <AppNameTest>] Test run failed: Test run incomplete. Expected 1 tests, received 0 

Y aquí está la salida LogCat:

08-23 12:28:41.905: DEBUG/AndroidRuntime(1092): >>>>>>>>>>>>>> AndroidRuntime START <<<<<<<<<<<<<< 
08-23 12:28:41.905: DEBUG/AndroidRuntime(1092): CheckJNI is ON 
08-23 12:28:42.155: DEBUG/AndroidRuntime(1092): --- registering native functions --- 
08-23 12:28:42.995: DEBUG/AndroidRuntime(1092): Shutting down VM 
08-23 12:28:43.005: DEBUG/dalvikvm(1092): Debugger has detached; object registry had 1 entries 
08-23 12:28:43.025: INFO/AndroidRuntime(1092): NOTE: attach of thread 'Binder Thread #3' failed 
08-23 12:28:43.625: DEBUG/AndroidRuntime(1100): >>>>>>>>>>>>>> AndroidRuntime START <<<<<<<<<<<<<< 
08-23 12:28:43.625: DEBUG/AndroidRuntime(1100): CheckJNI is ON 
08-23 12:28:43.876: DEBUG/AndroidRuntime(1100): --- registering native functions --- 
08-23 12:28:44.735: DEBUG/AndroidRuntime(1100): Shutting down VM 
08-23 12:28:44.745: DEBUG/dalvikvm(1100): Debugger has detached; object registry had 1 entries 
08-23 12:28:44.765: INFO/AndroidRuntime(1100): NOTE: attach of thread 'Binder Thread #3' failed 
08-23 12:28:45.385: DEBUG/AndroidRuntime(1108): >>>>>>>>>>>>>> AndroidRuntime START <<<<<<<<<<<<<< 
08-23 12:28:45.385: DEBUG/AndroidRuntime(1108): CheckJNI is ON 
08-23 12:28:45.645: DEBUG/AndroidRuntime(1108): --- registering native functions --- 
08-23 12:28:46.555: INFO/ActivityManager(59): Force stopping package com.PatientPoint.MCC uid=10038 
08-23 12:28:46.625: INFO/ActivityManager(59): Start proc <pkg_name> for added application <pkg_name>: pid=1114 uid=10038 gids={3003} 
08-23 12:28:47.196: INFO/TestRunner(1114): started: warning(junit.framework.TestSuite$1) 
08-23 12:28:47.236: INFO/ActivityManager(59): Force stopping package <pkg_name> uid=10038 
08-23 12:28:47.246: INFO/Process(59): Sending signal. PID: 1114 SIG: 9 
08-23 12:28:47.355: DEBUG/AndroidRuntime(1108): Shutting down VM 
08-23 12:28:47.375: DEBUG/jdwp(1108): Got wake-up signal, bailing out of select 
08-23 12:28:47.375: DEBUG/dalvikvm(1108): Debugger has detached; object registry had 1 entries 
08-23 12:28:47.415: INFO/AndroidRuntime(1108): NOTE: attach of thread 'Binder Thread #3' failed 

Respuesta

9

Ok, parece que estaba usando el constructor equivocado. He hecho de auto Eclipse generar el código y se creé esto:

public LoginTest(String pkg, Class<Login> activityClass) { 
    super(pkg, Login.class); 
} 

Sin embargo, al cambiar a esto:

public LoginTest() { 
    super("pkg_name", Login.class); 
} 

funciona bien. Sin embargo, no estoy seguro de por qué, así que si alguien puede dar una explicación, me gustaría aceptarla como la respuesta. Para todos los que encuentren este error, toda la discusión en línea alrededor de esto parece indicar que hay algún error en su constructor.

+0

Gracias, ayudó .. – FireAndIce

1

eliminé el argumento y ahora funciona, pruébelo.

public class LoginTest extends ActivityInstrumentationTestCase2<Login> { 

Activity mActivity; 
EditText mLoginTxt; 
EditText mPwdTxt; 
Button mLoginBtn; 
Button mClearBtn; 

public LoginTest() { 
super("pkg_name", Login.class); 
} 

@Override 
public void setUp() throws Exception { 
super.setUp(); 
} 

public void testPreconditions() { 

} 

public void testClear() { 
assertTrue(true); 
} 
Cuestiones relacionadas