我的布局中定义了一个按钮,如下所示:
<Button
android:id="@+id/speakButton"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:text="@string/speak"
android:onClick="speak"
/>
onClick
绑定到我的活动中的方法,例如:
public void speak(View v)
{
// Do my stuff here
}
使用Robolectric,我能够为该活动创建一个简单的测试类,我想知道是否可能有一个调用该按钮的测试,并确保我的活动中的方法被调用OK
(我的应用程序中有一大堆按钮,因此打算进行测试以确保它们正确连接,除非有人提出任何建议,为什么我不打扰)
@RunWith(RobolectricTestRunner.class)
public class MyActivityTest
{
private MyActivitymActivity;
private Button speakButton;
@Before
public void setUp() throws Exception
{
mActivity = new MyActivity();
mActivity.onCreate(null);
speakButton = (Button) mActivity.findViewById(com.jameselsey.apps.androidsam.R.id.speakButton);
}
@Test
public void testButtonsVisible()
{
assertThat(speakButton.getVisibility(), equalTo(View.VISIBLE));
}
@Test
public void buttonsInvokeIntendedMethods()
{
// Unsure how to implement this test
}
}
答案 0 :(得分:0)
我从未使用过它们,但我相信你可以使用TouchUtils
类来完成它。这是Android TouchUtils docs的链接。特别是你应该看看clickView
方法。