Android Can';无法使当前活动正常工作
我有两个活动,第一个是启动活动,在它的create方法中启动第二个活动,总是这样。 我的机器人分子测试通过得很好 活动Android Can';无法使当前活动正常工作,android,robotium,Android,Robotium,我有两个活动,第一个是启动活动,在它的create方法中启动第二个活动,总是这样。 我的机器人分子测试通过得很好 活动 public class LoginActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInst
public class LoginActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.loginview);
Intent intent = new Intent(this,MainActivity.class);
startActivity( intent );
}
我知道我的活动工作正常,因为它在我的设备和模拟器上启动
我的机器人分子测试
public void testLoginFirstTime() throws Exception
{
LoginActivity activity = new LoginActivity();
activity.onCreate(null);
assertThat(activity, new StartedMatcher(MainActivity.class));
}
我的机器人测试
public void setUp() throws Exception {
solo = new Solo(getInstrumentation(), getActivity());
}
public void testLoginFirstTime() throws Exception
{
solo.assertCurrentActivity("Expected MainActivity to launch", MainActivity.class);
}
我的机器人断言有什么问题?它总是认为当前活动是登录活动,即使当我观看模拟器/设备时,我可以看到Robotium确实启动了主活动,但它似乎不知道新活动已经启动。
编辑:意思是说如果我在登录视图中添加一个按钮并通过按钮点击启动新活动,那么Robotium将执行点击并检测新活动是否已启动ok
编辑:
看来这是机器人的限制
然而,这仍然给我留下了一个问题,即如何使用与用户使用robotium相同的方式来测试我的应用程序,即,不要作弊并在不同的活动中开始:(您需要使用构造函数solo=new solo(插装插装),然后在您创建了称为getActivity()的solo对象之后)为了开始第一个活动。然后它就会工作