Butterknife可以使用Espresso吗?我有一个测试样本,有2个活动。在第一个活动中,我打印文本,而不是单击按钮并将文本发送到另一个活动。之后我创建了MainActivityTest,一切运行良好。但是当我开始使用Butterknife时,我发现了错误NoMatchingViewException。
我的第一项活动:
public class MainActivity extends AppCompatActivity {
public static final String TAG = MainActivity.class.getSimpleName();
@BindView(R.id.first_text)
EditText mEditText;
@OnClick(R.id.button_one)
public void click(){
Intent intent = new Intent(MainActivity.this,SecondActivity.class);
intent.putExtra("TEXT",mEditText.getText().toString());
startActivity(intent);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
第二项活动:
public class SecondActivity extends AppCompatActivity {
public static final String TAG = SecondActivity.class.getSimpleName();
@BindView(R.id.second_text)
TextView mTextView;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
}
@Override
protected void onResume() {
super.onResume();
if(getIntent().getStringExtra("TEXT")!=null) {
mTextView.setText(getIntent().getStringExtra("TEXT"));
}
}
}
我的MainActivityTest:
public class MainActivityTest {
@Rule
public ActivityTestRule<MainActivity> mActivityRule = new ActivityTestRule<>(
MainActivity.class);
@Before
public void setUp() throws Exception {
}
@Test
public void onCreate() throws Exception {
onView(withId(R.id.first_text)).perform(typeText("Test"));
onView(withId(R.id.button_one)).perform(click());
onView(withId(R.id.second_text)).check(matches(withText("Test")));
}
}