gpt4 book ai didi

android - 测试运行失败 : Instrumentation run failed due to 'Process crashed.' when testing multiple Android activity

转载 作者:可可西里 更新时间:2023-11-01 19:07:20 31 4
gpt4 key购买 nike

我在测试我的 Android 应用程序时遇到问题。
我有 2 个 testCase 类,如果我单独执行它们,没有问题,测试运行到最后。但是,如果我“右键单击”我的测试项目并选择“以 Android Junit 测试方式运行”,我会收到一条消息

 Launching instrumentation android.test.InstrumentationTestRunner on device emulator-5554
[2012-03-27 15:56:27 - matroussedemaquillageTest] Collecting test information
[2012-03-27 15:56:31 - matroussedemaquillageTest] Test run failed: Instrumentation run failed due to 'Process crashed.'

请参阅下面我的两个测试类:

第一个测试类

package fr.smardine.matroussedemaquillage.test;

import android.test.ActivityInstrumentationTestCase2;
import android.widget.ImageSwitcher;
import fr.smardine.matroussedemaquillage.EntryPoint;

public class EntryPointTest extends
ActivityInstrumentationTestCase2<EntryPoint> {

private EntryPoint mActivity;
private ImageSwitcher mSwitcher;

public EntryPointTest() {
super("fr.smardine.matroussedemaquillage",
fr.smardine.matroussedemaquillage.EntryPoint.class);
}

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

@Override
protected void tearDown() throws Exception {
super.tearDown();
}

public void test2() {
assertEquals(2, 2);
}
}

第二个:

package fr.smardine.matroussedemaquillage.test;

import android.test.ActivityInstrumentationTestCase2;
import android.widget.ImageView;
import fr.smardine.matroussedemaquillage.Main;

public class MainTest extends ActivityInstrumentationTestCase2<Main> {

private Main mActivity;
private ImageView btRemplir;
private ImageView btPerime;
private ImageView btNotes;

public MainTest() {
super("fr.smardine.matroussedemaquillage",
fr.smardine.matroussedemaquillage.Main.class);
}

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

@Override
protected void tearDown() throws Exception {
super.tearDown();
}


public void test1() {
assertEquals(1, 1);
}
}

如您所见,我的测试并没有那么复杂,即使我在启动模拟器时“删除用户数据”,如果我执行这两个测试,也会出现相同的消息。
哦,顺便说一下,模拟器在 android 2.1 下运行,这是我的 AndroidManifest.xml 文件:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="fr.smardine.matroussedemaquillage.test"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk android:minSdkVersion="7" android:targetSdkVersion="7" />

<instrumentation
android:name="android.test.InstrumentationTestRunner"
android:targetPackage="fr.smardine.matroussedemaquillage" />

<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<uses-library android:name="android.test.runner" />
</application>

</manifest>

编辑:我的日志猫:

I/ActivityManager(64): Start proc fr.smardine.matroussedemaquillage for added application fr.smardine.matroussedemaquillage: pid=510 uid=10029 gids={3003, 1015} 
D/ddm-heap(510): Got feature list request D/dalvikvm(510): GC freed 5427 objects / 420224 bytes in 90ms
D/dalvikvm(510): GC freed 6498 objects / 506616 bytes in 79ms
D/dalvikvm(510): GC freed 7048 objects / 567464 bytes in 90ms
D/dalvikvm(510): GC freed 8628 objects / 503840 bytes in 73ms
I/System.out(510): Failed to open test.properties
I/AndroidRuntime(510): AndroidRuntime onExit calling exit(-1) –
D/Zygote(30): Process 510 exited cleanly (255)
I/ActivityManager(64): Process fr.smardine.matroussedemaquillage (pid 510) has died.
W/ActivityManager(64): Crash of app fr.smardine.matroussedemaquillage running instrumentation ComponentInfo{fr.smardine.matroussedemaquillage.test/android.test.Instrumentatio‌​nTestRunner}
D/ActivityManager(64): Uninstalling process fr.smardine.matroussedemaquillage
D/AndroidRuntime(504): Shutting down VM
D/dalvikvm(504): DestroyJavaVM waiting for non-daemon threads to exit
D/dalvikvm(504): DestroyJavaVM shutting VM down
D/dalvikvm(504): HeapWorker thread shutting down
D/dalvikvm(504): HeapWorker thread has shut down
D/jdwp(504): JDWP shutting down net...
D/jdwp(504): Got wake-up signal, bailing out of select
I/dalvikvm(504): Debugger has detached; object registry had 1 entries
D/dalvikvm(504): VM cleaning up
D/dalvikvm(504): LinearAlloc 0x0 used 643668 of 5242880 (12%)
I/dalvikvm(504): JNI: AttachCurrentThread (from ???.???)
E/AndroidRuntime(504): ERROR: thread attach failed'

最佳答案

当我在我的测试 Activity 的 onFinish 上使用 System.exit(0) 时,我曾经遇到过这个错误,如下所示:

@Override
public void finish() {
super.finish();
System.exit(0);

}

因此请检查您的 Main Activity 的 onFinish 方法。

关于android - 测试运行失败 : Instrumentation run failed due to 'Process crashed.' when testing multiple Android activity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9891382/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com