0

我创建测试项目。我的步骤:

  1. 文件 - 新建 - 项目;
  2. 选择 - Android 测试项目;
  3. 设置名称的项目;
  4. 需要测试时选择项目;
  5. 选择SDK目标版本;
  6. 单击完成。

完成后,我创建 libs 文件夹并将 espresso-1.0-SNAPSHOT-bundled.jar 添加到其中。项目的结构看起来 在此处输入图像描述

完成,我创建了测试类:

public class TestT extends ActivityInstrumentationTestCase2<MainActivity>

{

public TestT(Class<MainActivity> activityClass)
{
    super(activityClass);
}

@BeforeClass
public static void setUpBeforeClass() throws Exception
{}

@AfterClass
public static void tearDownAfterClass() throws Exception
{}

@Before
public void setUp() throws Exception
{}

@After
public void tearDown() throws Exception
{}

@Test
public void test()
{
    fail("Not yet implemented");
}

@SmallTest
public void testTest()
{
    Espresso.onView(ViewMatchers.withId(R.id.btnClick)).perform(ViewActions.click());
    Espresso.onView(ViewMatchers.withId(R.id.tvClick)).check(ViewAssertions.matches(ViewMatchers.withText(MainActivity.TEXT)));
}

}

完成,我运行测试项目:

  1. 右键单击测试项目;
  2. 运行方式 - Android JUnit 项目;

项目已运行,但没有任何显示。我打开窗口 - 显示视图 - Java - JUnit: 在此处输入图像描述

双击 emulator-5554 显示对话框: 在此处输入图像描述

我尝试了所有版本的 Eclipse 和 ADT 插件。我究竟做错了什么?

4

2 回答 2

1

您正在使用 JUnit 4。您必须使用 JUnit 3,因为 Espresso 基于 Android Instrumentation,目前仅支持 JUnit 3。为此:

  1. 从项目中删除 JUnit 4 引用
  2. 将测试用例的语法更新为 Junit 3,即删除 @Test 注释并更新您的测试方法,使其前缀为“test”

示例:不正确

@测试
公共无效测试()
{
    fail("尚未实现");
}

示例:正确

公共无效测试()
{
    fail("尚未实现");
}
于 2014-03-01T18:00:54.200 回答
0

您需要使用 GoogleInstrumentationTestRunner。请参阅此处的说明:https ://code.google.com/p/android-test-kit/wiki/Espresso#Espresso_Setup_Instructions

此外,将您的测试类构造函数更改为:

public TestT()
{
    super(MainActivity.class);
}
于 2013-12-13T22:07:50.103 回答