首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >机器人机器人waitForActivity不工作

机器人机器人waitForActivity不工作
EN

Stack Overflow用户
提问于 2015-01-24 23:35:38
回答 2查看 406关注 0票数 0

我正试着等待一个飞溅的屏幕完成,然后再玩主屏幕。我不能让waitForActivity工作。有什么建议吗?

代码语言:javascript
复制
public class InputLeadTest extends ActivityInstrumentationTestCase2<SplashActivity> {

private Solo solo;

public InputLeadTest() {
    super(SplashActivity.class);
}

@Override
public void setUp() throws Exception {
    solo = new Solo(getInstrumentation(), getActivity());
}

@Override
public void tearDown() throws Exception {
    solo.finishOpenedActivities();
}

public void testPreferenceIsSaved() throws Exception {
    solo.unlockScreen();
    solo.waitForActivity("MainActivity", 10000);
    solo.assertCurrentActivity("Expected MainActivity activity", "MainActivity"); 
}
}

我尝试过等待,waitForActivity(String),waitForActivity(String,int),waitForView。没有人在工作。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-01-25 00:12:52

以前从来没有回答过我自己的问题,但也许这会节省某人一小时的时间(这就是我花的时间:-/ )

代码语言:javascript
复制
    solo.unlockScreen();
    solo.assertCurrentActivity("Expected SplashActivity activity", "SplashActivity"); 
    solo = new Solo(getInstrumentation());
    solo.waitForActivity("MainActivity");
    solo.assertCurrentActivity("Expected MainActivity activity", "MainActivity"); 

必须创造一个新的独奏对象。

票数 1
EN

Stack Overflow用户

发布于 2015-01-27 17:42:09

这个API就是以这种方式使用的,就像在应用程序activity1和activity2中有两个活动一样。测试用例就像在activity1上做一些事情,等待activity2,因为activity1上的操作,然后在activity2上做一些事情。在这种情况下,您可以使用这个solo.waitForActivity("activity2")。

由于我们通常不会在splash屏幕上执行任何操作,因此处理您的情况的最佳方法是使用MainActivity创建新的solo对象。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28131519

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档