*/
public void input()
{
mLoginTest.runOnUiThread(new Runnable()
{
@Override
public void run()
{
// TODO Auto-generated method stub
userName.requestFocus();
userName.performClick();
}
});
/*由于测试用例在单独的线程上执行,所以此处需要同步application,
* 调用waitForIdleSync等待测试线程和UI线程同步,才能进行输入操作。
* waitForIdleSync和sendKeys不允许在UI线程里运行
*/
mInstrumentation.waitForIdleSync();
//调用sendKeys方法,输入用户名
sendKeys(KeyEvent.KEYCODE_P, KeyEvent.KEYCODE_H,
KeyEvent.KEYCODE_I, KeyEvent.KEYCODE_C,
KeyEvent.KEYCODE_O, KeyEvent.KEYCODE_M,
KeyEvent.KEYCODE_M);
mLoginTest.runOnUiThread(new Runnable()
{
@Override
public void run()
{
// TODO Auto-generated method stub
passWord.requestFocus();
passWord.performClick();
}
});
//调用sendKeys方法,输入密码
sendKeys(KeyEvent.KEYCODE_1, KeyEvent.KEYCODE_2,
KeyEvent.KEYCODE_3, KeyEvent.KEYCODE_4);
}
//测试输入的用户信息
public void testInput()
{
//调用测试类的input方法,实现输入用户信息(sendKeys实现输入)
input();
//测试验证用户信息的预期值是否等于实际值
assertEquals("phicomm", userName.getText().toString());
//密码的预期值123与实际值1234不符,Failure;
assertEquals("123", passWord.getText().toString());
}
//测试登录按钮
public void testLogin()
{
input();
//开新线程,并通过该线程在实现在UI线程上执行操作
mInstrumentation.runOnMainSync(new Runnable()
{
@Override
public void run()